Поделиться через


SkiaSharp Graphics in Xamarin.Forms

Использование SkiaSharp для 2D-графики в Xamarin.Forms приложениях

SkiaSharp — это 2D-графическая система для .NET и C# с открытым кодом, которая широко используется в продуктах Google. Вы можете использовать SkiaSharp в Xamarin.Forms приложениях для рисования 2D-векторной графики, растровых изображений и текста.

В этом руководстве предполагается, что вы знакомы с Xamarin.Forms программированием.

SkiaSharp Preliminaries

SkiaSharp для Xamarin.Forms пакета NuGet упакована в пакет. После создания Xamarin.Forms решения в Visual Studio или Visual Studio для Mac можно использовать диспетчер пакетов NuGet для поиска пакета SkiaSharp.Views.Forms и добавления его в решение. Если вы проверка раздел "Ссылки" каждого проекта после добавления SkiaSharp, вы увидите, что в каждый из проектов в решении добавлены различные библиотеки SkiaSharp.

Если приложение Xamarin.Forms предназначено для iOS, измените его файл Info.plist , чтобы изменить минимальный целевой объект развертывания на iOS 8.0.

На любой странице C#, используюшей SkiaSharp, вы хотите включить using директиву для SkiaSharp пространства имен, которая включает все классы, структуры и перечисления SkiaSharp, которые будут использоваться в графическом программировании. Кроме того, вам потребуется директива using для SkiaSharp.Views.Forms пространства имен для классов, относящихся к Xamarin.Forms. Это гораздо меньшее пространство имен, с самым важным классом SKCanvasView. Этот класс является производным от Xamarin.FormsView класса и размещает выходные данные графики SkiaSharp.

Внимание

Пространство SkiaSharp.Views.Forms имен также содержит класс, производный SKGLView от нее, View но использующий OpenGL для отрисовки графики. В целях простоты это руководство ограничивает себя SKCanvasView, но использование SKGLView вместо этого довольно похоже.

Основы рисования в SkiaSharp

Некоторые из самых простых графических рисунков, которые можно нарисовать с помощью SkiaSharp, являются кругами, овалами и прямоугольниками. При отображении этих цифр вы узнаете о координатах, размерах и цветах SkiaSharp. Отображение текста и растровых изображений является более сложным, но в этих статьях также представлены эти методы.

Строки и пути SkiaSharp

Графический путь — это ряд подключенных прямых линий и кривых. Пути могут быть росчерками, заполненными или обоими. В этой статье рассматриваются многие аспекты рисования линий, включая концы росчерка и соединения, а также тиреные и пунктирные линии, но не останавливаются от геометрии кривой.

Преобразование SkiaSharp

Преобразования позволяют графическим объектам быть равномерно переведены, масштабируются, поворачиваются или перемежаются. В этой статье также показано, как использовать стандартную матрицу преобразования 3-3 для создания неаффинных преобразований и применения преобразований к путям.

Пути и кривые SkiaSharp

Исследование путей продолжается с добавлением кривых к объектам пути и использованием других мощных функций пути. Вы увидите, как можно указать весь путь в краткой текстовой строке, как использовать эффекты пути и как копаться во внутренних элементах пути.

Растровые изображения SkiaSharp

Растровые изображения — это прямоугольные массивы битов, соответствующих пикселям устройства отображения. В этой серии статей показано, как загружать, сохранять, отображать, создавать, рисовать, анимировать и получать доступ к битам растровых карт SkiaSharp.

Эффекты SkiaSharp

Эффекты — это свойства, которые изменяют нормальное отображение графики, включая линейные и циклические градиенты, градиенты растрового изображения, режимы смешения, размытие и другие.