Skia и Skia4Delphi

<< Нажмите, чтобы показать Содержание >>

Skia и Skia4Delphi

Skia – это библиотека для создания 2D-графики с открытым исходным кодом, разработанная Google. Она предоставляет общие API, работающие на различных аппаратных и программных платформах. Skia используется в качестве графического движка в Google Chrome и ChromeOS, Android, Flutter и многих других продуктах.

Skia4Delphi – это кроссплатформенный API для работы с 2D-графикой в ​​Delphi, основанный на библиотеке графики Skia от Google.

Skia4Delphi входит в состав RAD Studio, начиная с RAD Studio 12 Athens. Для более старых версий Delphi её можно загрузить отдельно.

При использовании Skia4Delphi, ТРВ-Редактор (TRichView) получает дополнительные возможности.

VCL

В версии VCL Skia4Delphi добавляет поддержку дополнительных графических форматов: SVG, WebP, WBMP. Графические изображения этих типов можно вставлять в TRichView.

Для полноценного использования поддержки SVG добавьте модуль RVSkia в свой проект.

FireMonkey

Канва Skia

В FireMonkey Skia4Delphi предоставляет собственные классы канвы, которые могут заменить стандартные классы FireMonkey.

Для поддержки этих классов в ТРВ-Редакторе добавьте модуль fmxRVSkiaFM в свой проект.

Кроме того, модуль fmxRVSkiaFM позволяет использовать изображения в формате SVG и сохранять документы в формате PDF.

Известная проблема: рисование на канве Skia в Linux происходит медленно, следует избегать использования GlobalUseSkia = True с ТРВ-Редактором для Linux.

Графика

Skia4Delphi добавляет несколько кодеков TBitmap (хотя некоторые из них предназначены только для декодирования).

Кроме того, Skia4Delphi поддерживает изображения SVG. Их можно вставлять в TRichView как класс TRVSvgImageSkiaFM.

Вы можете использовать RVGraphicHandler.GetFileDialogFilter для получения строки фильтра для диалогов открытия и сохранения. Он возвращает строку фильтра, содержащую не только растровые форматы (зарегистрированные для TBitmap), но и дополнительные форматы (например, SVG), если они доступны.

PDF

Можно использовать TRVPrint.SavePDF и TRVReportHelper.SavePDF для создания файлов PDF.