Skip to content

Releases: skia4delphi/skia4delphi

7.0.1

03 Aug 02:47
Compare
Choose a tag to compare

v7.0.1

  • FMX Render Fixed window scale on FMXLinux when Skia render is enabled #414 5b38995
  • API Fixed render of texts on svg and lottie animations #415 a4347b4
  • Tests Fixed AV on tests that uses IModulateCanvas e0fa44d
  • Tests Improved app startup 77dbca0
  • Tests Fixed canvas tests using Skia m132 feb2722
  • Tests Fixed FMX effects tests cadaff8

Skia version: 132.0.1 What has changed from the original code? Compare.

Installation

Just download and run the Skia4Delphi_7.0.1_Setup.exe attached.

7.0.0

22 Jul 04:58
Compare
Choose a tag to compare

v7.0.0

  • Library Added pre-support for RAD Studio 13 Florence be9152b 17d7642
  • FMX Render Fixed AV using Skia Metal or Vulkan as render #413 69b6725
  • FMX Render Fixed visual artifacts with controls when Skia is enabled #404 db2c9d7 d0541dc
  • Controls Fixed exception drawing in an empty bitmap 5641909
  • API Removed workarounds for interface binary compatibility a67dd05
  • FMX Render Added ability to get ISkCanvas from TCanvas using Supports fc46d27 451e4ce
  • FMX Render Improved performance for FillRect with round corners 2565b7b b6f2257 e2c3b2f dfa2443 d137a67 78c847e
  • FMX Render Added DoDrawRoundRect to improve performance 24c48a3 3b73afa
  • Controls Fixed TSkLabel color on dark style #405 1bb6f1a
  • Controls Added virtual function CreateWordsCollection in TSkLabel to allow customizations #370 2ee7118

From v6.4.0 Beta 1

  • Library Upgraded Skia version from m107 to m132. However, new features/APIs have not been exposed yet 52fd41d 1ff3aac a8e0a28 173b7f8
  • Tools Added new pre-compiled tool sksl-minify.exe from the official Google Skia tools ae3ccbf
  • Library Removed support for Android on RAD Studio 10.3 Rio #342 33c4d10

Skia version: 132.0.0 What has changed from the original code? Compare.

Windows static linking deferred

The official release of Windows static linking has been postponed, as some optimizations present in the DLL version are currently unavailable for static linking (see #300 (comment)), and clarifications regarding specific licenses are still pending.

Installation

Just download and run the Skia4Delphi_7.0.0_Setup.exe attached.

6.4.0 Beta 1

17 Mar 16:55
Compare
Choose a tag to compare

v6.4.0 Beta 1

  • Library Added static linking support for Windows (removing sk4d.dll dependency) #130 #317 #330 #368 #66 #300 019e20a 5ec364d 7f32862
  • Library Upgraded Skia version from m107 to m132. However, new features/APIs have not been exposed yet to ensure binary compatibility with Skia4Delphi 6.x versions. 52fd41d 1ff3aac a8e0a28 173b7f8
  • Tools Added new pre-compiled tool sksl-minify.exe from the official Google Skia tools; ae3ccbf
  • Library Removed support for Android on RAD Studio 10.3 Rio #342 33c4d10

Skia version: 132.0.0 What has changed from the original code? Compare.

Installation

Just download and run the Skia4Delphi_6.4.0-beta1_Setup.exe attached.

6.3.0

28 Jan 02:37
Compare
Choose a tag to compare

v6.3.0

From Beta 1

  • FMX Render Added optimization for Skia render when drawing bitmaps without stretch #349 2ff08b1 d002689 434fdff
  • FMX Render Added optimization when using Quality=HighPerformance af741e0
  • FMX Render Simplified ellipse draw 5c36837
  • FMX Render Improved draw image performance using default quality c131147
  • FMX Render Improved quality of Tile and TileOriginal wrap modes 47c215c
  • Controls Allowed use TBitmap.Assign from graphics decoded by Skia codecs on Vcl 50c3d5a
  • FMX Render Improved bitmap draw when AHighSpeed=true a1a198c
  • FMX Render Implemented modulate color on all draw methods 638595b
  • FMX Render Improved opacity of solid brush decf658
  • Tests Improved images preview of runner f8edd1c
  • Library Fixed macOS linking 0a62f87
  • FMX Render Fixed oblique fonts on macOS and iOS #322 e656c2d
  • Controls Fixed oblique fonts on macOS and iOS 11d6d65
  • API Fixed interface breakage on unit System.Skia.API.pas 1bcbc67
  • FMX Render Fixed Metal issues when "Display Zoom" option is not default #315 ea35ad8
  • FMX Render Fixed text render for far east countries on Android #313 8d2f6e6 9129039 7b442b1
  • FMX Render Fixed wrong scale with HiDPI on Windows on Delphi 10.4 or older #336 e64d7c8
  • Library Fixed conflict with Delphi zlib on Android #344 b0eb728 a1cacc3
  • Documentation Fixed typos on ANIMATED-IMAGES.md #345 eef6d5a
  • FMX Render Fixed ISkCanvasWrapper.GetCanvasScale (used by Skia printer) 7902191 75fefa5
  • Controls Replaced 'Tahoma 8' to 'Segoe UI 9' on designtime forms 15f95c1
  • Library Fixed incorrect external declarations in System.Skia.API for Android #346 1b10639 7ade6fe 90211b0
  • Controls Fixed DrawDesignBorder opacity 520b06b 47e46c8
  • CI Fixed CI build 50e72cf
  • Library Cleaned up projects 3bb2b3e
  • Library Fixed packages db7fa5c
  • CI Increased logs and artifacts retention to 90 days 5bfdfac
  • FMX Render Fixed bitmap brush draws with TWrapMode.TileOriginal 4400602
  • Controls Fixed Skia controls cache system on FMX 7004fe5
  • Tests Added tests for TCanvas.DrawBitmap using Skia render b160905
  • FMX Render Fixed sampling options for bitmap draws 1c6b1eb
  • Controls Fixed 'TBitmap.SkiaDraw should compute BitmapScale on FMX' 05ac21c
  • Tests Added tests for bitmap: SkiaDraw, ToSkImage and CreateFromSkImage 8be53e0
  • Tests Added tests for FMX Canvas drawing images using IModulateColor 32732d7
  • FMX Render Fixed ClipRects used on BeginScene 018bfe0
  • Tests Added tests for SaveState and FillRect solid on FMX render eb5669e
  • FMX Render Fixed gradient when there is no point 8781058
  • Tests Fixed tests with TMatrix.CreateRotation 2aef3ae
  • FMX Render Fixed gradient that have points out of range [0, 1] e5bab57
  • Tests Improved gradient tests of FMX render a6cb7f1
  • FMX Render Fixed fill with bitmap when TopLeft is not zero 063a9ea
  • FMX Render Fixed incorrect result using modulate color efce859
  • FMX Render Added test for fill round rect with bitmap 00bba84
  • FMX Render Added more tests for round rect 8659c2a
  • FMX Render Added tests for fill ellipse bea58d9
  • FMX Render Avoided draw for empty destination 6122214
  • Documentation Removed know issues section from readme as they were resolved #389 a1f052f
  • FMX Render Added tests for fill ellipse 39d9972
  • FMX Render Added tests for fill path 3686d46
  • FMX Render Added tests for fill arc and polygon f40c9cb
  • Library Fixed hppemit for C++Builder 1f57ae4
  • Controls Fixed Skia based encoders for Vcl, like webp #393 f7f2b3b
  • Library Updated banners c52941c
  • Setup Fixed Delphi Community Edition and Trial support;

Skia version: 107.4.0

Installation

Just download and run the Skia4Delphi_6.3.0_Setup.exe attached.

6.3.0 Beta 1

05 Jan 21:26
Compare
Choose a tag to compare
6.3.0 Beta 1 Pre-release
Pre-release

v6.3.0 Beta 1

  • FMX Render Added optimization for Skia render when drawing bitmaps without stretch #349 2ff08b1 d002689 434fdff
  • FMX Render Added optimization when using Quality=HighPerformance af741e0
  • FMX Render Simplified ellipse draw 5c36837
  • FMX Render Improved draw image performance using default quality c131147
  • FMX Render Improved quality of Tile and TileOriginal wrap modes 47c215c
  • Controls Allowed use TBitmap.Assign from graphics decoded by Skia codecs on Vcl 50c3d5a
  • FMX Render Improved bitmap draw when AHighSpeed=true a1a198c
  • FMX Render Implemented modulate color on all draw methods 638595b
  • FMX Render Improved opacity of solid brush decf658
  • Tests Improved images preview of runner f8edd1c
  • Library Fixed macOS linking 0a62f87
  • FMX Render Fixed oblique fonts on macOS and iOS #322 e656c2d
  • Controls Fixed oblique fonts on macOS and iOS 11d6d65
  • API Fixed interface breakage on unit System.Skia.API.pas 1bcbc67
  • FMX Render Fixed Metal issues when "Display Zoom" option is not default #315 ea35ad8
  • FMX Render Fixed text render for far east countries on Android #313 8d2f6e6 9129039 7b442b1
  • FMX Render Fixed wrong scale with HiDPI on Windows on Delphi 10.4 or older #336 e64d7c8
  • Library Fixed conflict with Delphi zlib on Android #344 b0eb728 a1cacc3
  • Documentation Fixed typos on ANIMATED-IMAGES.md #345 eef6d5a
  • FMX Render Fixed ISkCanvasWrapper.GetCanvasScale (used by Skia printer) 7902191 75fefa5
  • Controls Replaced 'Tahoma 8' to 'Segoe UI 9' on designtime forms 15f95c1
  • Library Fixed incorrect external declarations in System.Skia.API for Android #346 1b10639 7ade6fe 90211b0
  • Controls Fixed DrawDesignBorder opacity 520b06b 47e46c8
  • CI Fixed CI build 50e72cf
  • Library Cleaned up projects 3bb2b3e
  • Library Fixed packages db7fa5c
  • CI Increased logs and artifacts retention to 90 days 5bfdfac
  • FMX Render Fixed bitmap brush draws with TWrapMode.TileOriginal 4400602
  • Controls Fixed Skia controls cache system on FMX 7004fe5
  • Tests Added tests for TCanvas.DrawBitmap using Skia render b160905
  • FMX Render Fixed sampling options for bitmap draws 1c6b1eb
  • Controls Fixed 'TBitmap.SkiaDraw should compute BitmapScale on FMX' 05ac21c
  • Tests Added tests for bitmap: SkiaDraw, ToSkImage and CreateFromSkImage 8be53e0
  • Tests Added tests for FMX Canvas drawing images using IModulateColor 32732d7
  • FMX Render Fixed ClipRects used on BeginScene 018bfe0
  • Tests Added tests for SaveState and FillRect solid on FMX render eb5669e
  • FMX Render Fixed gradient when there is no point 8781058
  • Tests Fixed tests with TMatrix.CreateRotation 2aef3ae
  • FMX Render Fixed gradient that have points out of range [0, 1] e5bab57
  • Tests Improved gradient tests of FMX render a6cb7f1
  • FMX Render Fixed fill with bitmap when TopLeft is not zero 063a9ea
  • FMX Render Fixed incorrect result using modulate color efce859
  • FMX Render Added test for fill round rect with bitmap 00bba84
  • FMX Render Added more tests for round rect 8659c2a
  • FMX Render Added tests for fill ellipse bea58d9
  • FMX Render Avoided draw for empty destination 6122214
  • Documentation Removed know issues section from readme as they were resolved #389 a1f052f
  • FMX Render Added tests for fill ellipse 39d9972
  • FMX Render Added tests for fill path 3686d46
  • FMX Render Added tests for fill arc and polygon f40c9cb
  • Library Fixed hppemit for C++Builder 1f57ae4
  • Controls Fixed Skia based encoders for Vcl, like webp #393 f7f2b3b
  • Library Updated banners c52941c
  • Setup Fixed Delphi Community Edition and Trial support;

Skia version: 107.4.0

Installation

Just download and run the Skia4Delphi_6.3.0-beta1_Setup.exe attached.

6.2.0

16 Jun 17:56
Compare
Choose a tag to compare

v6.2.0

  • Replaced Android and macOS shared libraries by static libraries; #299 Library
  • Improved overall performance of FMX render (reducing sample count to 1); FMX Render
  • Improved encoding file detection on SVG design-time dialog; Controls
  • Adjusted the animated codec for future releases; Controls
  • Added Tests\Assets\Expected.zip (on repository only) with images expected of all tests to help investigations of future regressions; Tests
  • Fixed Skia based decoders (like webp) loaded in designtime on Vcl; Controls
  • Fixed hpp emit; C++
  • Fixed small issue on uninstaller for new versions; Setup

Skia version: 107.4.0

Deployment adjustments

Now, it is not necessary to deploy the Skia library on Android and macOS, as it is now completely static. But there is no need to change anything manually when deploying your project, as during compilation the Skia4Delphi plugin already makes all the necessary adjustments to your project.

RAD Studio 12 Athens

Embarcadero has integrated Skia4Delphi into RAD Studio in its new release RAD Studio 12 Athens introducing the version of Skia4Delphi v6.0.0 on RAD Studio 12.0 and v6.1.0 on RAD Studio 12.1, and adding some extra units with exclusive Embarcadero features.

Installation

Just download and run the Skia4Delphi_6.2.0_Setup.exe attached.

6.1.0

01 Apr 17:32
Compare
Choose a tag to compare

v6.1.0

  • Added support for RAD Studio 12.1; Library
  • Added example using IFMXFontManagerService on RAD Studio 12; Documentation
  • Added GlobalUseSkiaFilters to be able to disable optionally the Skia filters engine; FMX Render
  • Added v7-lts branch (the future major version) CI
  • Improved the TStrokeBrush lookup for resource brush; FMX Render
  • Updated banners to 2024; Library
  • Fixed wrong size of TSkLabel with AutoSize and Align=None; #273 Controls
  • Fixed TSkLabel AutoSize when MaxLines=0; Controls
  • Fixed SVG load from stream on Vcl; #282 Controls
  • Fixed warning introduced on 7f45095; FMX Render
  • Fixed workflow errors and warnings; CI

Skia version: 107.3.2

RAD Studio 12 Athens

Embarcadero has integrated Skia4Delphi into RAD Studio in its new release RAD Studio 12 Athens introducing the version of Skia4Delphi v6.0.0 on RAD Studio 12.0 and v6.1.0 on RAD Studio 12.1, and adding some extra units with exclusive Embarcadero features.

Installation

Just download and run the Skia4Delphi_6.1.0_Setup.exe attached.

6.0.0

12 Nov 02:16
Compare
Choose a tag to compare

v6.0.0

  • Added official support for RAD 12 Athens; Library

From Beta 5

  • Updated to latest libwebp (v1.3.2); API
  • Improved performance of FMX texts; FMX Render
  • Fixed memory leak using Skia Metal; FMX Render
  • Fixed tab character as a square on Skia render and on TSkLabel control; #270 FMX Render Controls
  • Fixed TSkSvgBrush.WrapMode=Stretch; #228 Controls
  • Fixed autosize of TSkLabel and improve draw quality using default FMX render; #229 Controls
  • Fixed TSkImage.MakeFromPicture; #226 API
  • Fixed property editor of text/caption of TSkLabel; Controls
  • Fixed macOS warning using Skia Metal; FMX Render
  • Fixed code of documentation; Documentation
  • Replaced assets of demo with similar ones with permissive licenses; Samples
  • Replaced DisposeOf by Free to ensure compatibility with RAD 12; Library

From Beta 4

  • Added "GlobalSkiaBitmapsInParallel" as experimental for RAD Studio 12 Beta; FMX Render
  • Fixed vulnerability on libwebp (CVE-2023-4863); Library
  • Fixed startup exception with OpenGL on VirtualBox and Hyper-V; Library
  • Fixed Linux pixel format (thanks to @eugenekryukov); FMX Render
  • Fixed trailing horizontal align; FMX Render
  • Fixed TSkImage.MakeFromRaster, TSkImage.MakeFromTexture and TSkSurface.MakeRasterDirect (thanks to Dmitry Arefiev); #252 API
  • Fixed TSkLabel.TCustomWordsItem.OnClick; #262 Controls
  • Fixed lines performance on Windows raster; FMX Render
  • Fixed compatibility with RAD Studio 12 Beta; Library

From Beta 3

  • Added workflows on Github Actions to compile and test each commit and to build the production setup; CI
  • Added basic support for FPC (thanks to Mattias Gaertner); Library
  • Improved iOS/iOSSimulator static linkage; API
  • Fixed SkPath.IsLine; API
  • Fixed TSkSamplingOptions consts; API
  • Fixed SkUnicode.GetBreaks; API
  • Fixed TSkImageInfo.IsValid; API
  • Fixed FMX support for RAD 10 Seattle and older; FMX Render
  • Fixed unit tests on RAD 10.3 Rio and older; Tests
  • Minor fixes and improvements on API side; API

From Beta 2

  • Fixed AV at app startup with metal on iOS and macOS; #242 FMX Render
  • Fixed Android crash when restored from background; #225 FMX Render
  • Fixed macOS universal binary; Library
  • Added Mac App Store manual signature instructions; #233 Documentation

From Beta 1

  • Renamed units (Skia.pas -> System.Skia, Skia.FMX.* -> FMX.Skia.*, Skia.Vcl.pas -> Vcl.Skia.pas); Library
  • Added skia render to FMXLinux (only raster) (thanks @eugenekryukov); #221 FMX Render
  • Rewritted the SkRuntimeEffects to have the same structure as the original API, with the new classes SkRuntimeShaderBuilder and SkRuntimeBlenderBuilder; API
  • Fixed bitmap draws; FMX Render #217
  • Fixed performance issue with bitmaps in TBrush; FMX Render
  • Fixed Linux compilation; #216 #238 Library
  • Fixed crash deleting text of TEdit or TMemo; #214 FMX Render
  • Fixed text decoration color using TTextAttribute; FMX Render
  • Fixed linear gradient; #224 FMX Render
  • Fixed SkRuntimeEffect.GetUniformName; API
  • Fixed path tests; Tests
  • Minor improvements.

Skia version: 107.3.2

RAD Studio 12.0 Athens

Embarcadero has integrated Skia4Delphi into RAD Studio in its new release RAD Studio 12.0 Athens introducing this version of Skia4Delphi, v6.0.0, and adding some extra units with exclusive Embarcadero features.

Compatibility break

  1. Units renamed
    Embarcadero integrated Skia4Delphi into RAD Studio 12 Athens and to improve the integration of the opensource project with the integrated version of the RAD Studio 12 Athens, we decided to keep the new unit names adopted by Embarcadero:

    • Skia.pas ➜ System.Skia.pas
    • Skia.API.pas ➜ System.Skia.API.pas
    • Skia.FMX.pas ➜ FMX.Skia.pas
    • Skia.FMX.Graphics.pas ➜ FMX.Skia.Canvas.pas
    • Skia.FMX.Canvas.GL.pas ➜ FMX.Skia.Canvas.GL.pas
    • Skia.FMX.Canvas.Metal.pas ➜ FMX.Skia.Canvas.Metal.pas
    • Skia.Vcl.pas ➜ Vcl.Skia.pas
  2. SkRuntimeEffect rewritted
    The SkRuntimeEffect structure was rewritten following the same structure as the original Google Skia API, to facilitate future updates and allow better integration with other APIs (such as SkImageFilter for example). Now the SkRuntimeEffect just loads the SKSL code, then the SkRuntimeShaderBuilder must be used to allocate and change the uniforms and then create the shader. See examples of the new functionality in our demos.

Installation

Just download and run the Skia4Delphi_6.0.0_Setup.exe attached.

6.0.0 Beta 5

12 Oct 19:26
Compare
Choose a tag to compare
6.0.0 Beta 5 Pre-release
Pre-release

v6.0.0 Beta 5

  • Updated to latest libwebp (v1.3.2); API
  • Improved performance of FMX texts; FMX Render
  • Fixed memory leak using Skia Metal; FMX Render
  • Fixed tab character as a square on Skia render and on TSkLabel control; #270 FMX Render Controls
  • Fixed TSkSvgBrush.WrapMode=Stretch; #228 Controls
  • Fixed autosize of TSkLabel and improve draw quality using default FMX render; #229 Controls
  • Fixed TSkImage.MakeFromPicture; #226 API
  • Fixed property editor of text/caption of TSkLabel; Controls
  • Fixed macOS warning using Skia Metal; FMX Render
  • Fixed code of documentation; Documentation
  • Replaced assets of demo with similar ones with permissive licenses; Samples
  • Replaced DisposeOf by Free to ensure compatibility with RAD 12; Library

Skia version: 107.3.2

Installation

Just download and run the Skia4Delphi_6.0.0-beta5_Setup.exe attached.

6.0.0 Beta 4

30 Sep 20:19
Compare
Choose a tag to compare
6.0.0 Beta 4 Pre-release
Pre-release

v6.0.0 Beta 4

  • Added "GlobalSkiaBitmapsInParallel" as experimental for RAD Studio 12 Beta; FMX Render
  • Fixed vulnerability on libwebp (CVE-2023-4863); Library
  • Fixed startup exception with OpenGL on VirtualBox and Hyper-V; Library
  • Fixed Linux pixel format (thanks to @eugenekryukov); FMX Render
  • Fixed trailing horizontal align; FMX Render
  • Fixed TSkImage.MakeFromRaster, TSkImage.MakeFromTexture and TSkSurface.MakeRasterDirect (thanks to Dmitry Arefiev); #252 API
  • Fixed TSkLabel.TCustomWordsItem.OnClick; #262 Controls
  • Fixed lines performance on Windows raster; FMX Render
  • Fixed compatibility with RAD Studio 12 Beta; Library

Skia version: 107.3.1

Installation

Just download and run the Skia4Delphi_6.0.0-beta4_Setup.exe attached.