Skia4delphiは、尊敬されるGoogleのSkiaライブラリを利用して、Delphiのオープンソースのクロスプラットフォーム2Dグラフィックライブラリです。
Skiaは、2Dテキスト、ジオメトリ、画像のレンダリング専用のオープンソースライブラリであり、精度、優れた品質、高性能に焦点を当てています。幅広いハードウェアおよびソフトウェアプラットフォームと互換性のある多用途のAPIを提供します。
GoogleのSkiaグラフィックライブラリは、Google Chrome、Chrome OS、Android、Flutter、Xamarin、Mozilla Firefox、Firefox OSなど、多数の製品のグラフィックエンジンとして機能します。
Skia4delphiライブラリを使用して、Firemonkeyのグラフィックエンジンをオーバーライドして、Skiaをデフォルトのキャンバスとして使用できるようにすることができます。それにより、Firemonkeyアプリケーションは自動的に次のようになります。
もっと詳しく知る...
Skia4delphiを3つの方法でインストールできます。
セットアップ(推奨)
最新リリースのセットアップをダウンロードして、インストールします。
もっと詳しく知る...
Skia4delphiを使用すると、PDFドキュメントを作成し、テキストから画像まで何でも描画することができます。以下の例は、PDFドキュメントを作成し、その中にSVGを描画する方法を示しています。
var LSVGDOM := TSkSVGDOM.MakeFromFile( ' SamplesDemoAssetslion.svg ' );
var LSize := TSizeF.Create( 600 , 600 );
LSVGDOM.SetContainerSize(LSize);
var LDocumentStream := TFileStream.Create( ' output.pdf ' , fmCreate);
try
var LDocument := TSkDocument.MakePDF(LDocumentStream);
try
var LCanvas := LDocument.BeginPage(LSize.Width, LSize.Height);
try
// Draw anything here with Skia canvas
LSVGDOM.Render(LCanvas);
finally
LDocument.EndPage;
end ;
finally
LDocument.Close;
end ;
finally
LDocumentStream.Free;
end ;このコードの結果、以下の出力が発生します。
Skia4delphiライブラリは、多くの画像形式をサポートしています。リストの以下を参照してください:
デコードのためのサポートされた形式
| 画像形式 | 拡張機能 |
|---|---|
| ビットマップ | .bmp |
| GIF | .gif |
| アイコン | .ico |
| jpeg | .jpg、.jpeg |
| PNG | .png |
| RAW ADOBE DNGデジタルネガ | .dng |
| 生のキヤノン | .cr2 |
| 生の富士フイルムRAF | .raf |
| 生ニコン | .nef、.nrw |
| 生のオリンパスORF | .orf |
| 生のパナソニック | .RW2 |
| RAW PENTAX PEF | .pef |
| RAW SAMSUNG SRW | .srw |
| 生のソニー | .arw |
| WBMP | .wbmp |
| webp | .WEBP |
注:生の画像は、非ワインドプラットフォームに限定されています
エンコーディングのためのサポートされた形式
| 画像形式 | 拡張機能 |
|---|---|
| jpeg | .jpg、.jpeg |
| PNG | .png |
| webp | .WEBP |
WebPは、画像に優れた損失のない損失のある圧縮を提供する最新の画像形式です。 WebPロスレス画像のサイズは26%小さく、PNGと比較して。 WebPの損失のある画像は、同等の品質で同等のJPEG画像よりも25〜34%小さいです。
以下の例は、WebP形式へのエンコーダーの方法を示しています。
var LImage := TSkImage.MakeFromEncodedFile( ' SamplesDemoAssetskung-fu-panda.png ' );
LImage.EncodeToFile( ' output.webp ' , TSkEncodedImageFormat.WEBP, 80 );
LImage.EncodeToFile( ' output.jpg ' , TSkEncodedImageFormat.JPEG, 80 );このコードの結果、以下の出力が発生します。
もっと詳しく知る...
| Rad Studio | プラットフォーム |
|---|---|
| Rad Studio 11 AlexandriaまたはNewer | すべてのプラットフォーム |
| Rad Studio 10.3 RioまたはNewer | Windows、Android |
| Rad Studio XE7以降 | Windows |
Skia4delphi (上記)でサポートされているプラットフォームの場合、ライブラリでサポートされているOSバージョンは、RAD StudioがサポートするOSバージョンと同じです。
APIはSkiaのものと非常に似ており、読みやすさのために変更された方法や関数はほとんどないため、Skiaのドキュメントを使用できます。
Skia4delphi 6.2.0
スカイバージョン使用:Chrome/M107

このリンクのユーザーに関する小さなアンケートに応答するのを手伝ってください