Xamarin.MacでSkiaSharpを使う

提供: MonoBook
ナビゲーションに移動 検索に移動

Xamarin.MacSkiaSharpを使う。

準備[編集 | ソースを編集]

NuGetから「SkiaSharp.Views」をインストールする。

貼付[編集 | ソースを編集]

Storyboardを開き「Custom Views」を貼り付け、 Identity InspectorのClassに「SKCanvasView」を設定する。

SKCanvasViewクラスを継承したものを用意し、そちらを使ったほうが行儀よいが、 今回は面倒なので直接利用している。

変数名[編集 | ソースを編集]

Assitant Editorを開き「ViewController.h」を選択する。

次にキーボードCtrlキー押しながらマウスで「SKCanvasView」を「ViewController.h」にドラッグ&ドロップする。ドロップすると変数名を付けるダイアログが表示されるので「canvas」などと命名する。

描画処理[編集 | ソースを編集]

描画処理を記述する。 再描画が必要になるとPaintSurfaceイベントが呼ばれるので、その中に描画処理を書いておく。

    using SkiaSharp;
    using SkiaSharp.Views.Mac;

    public partial class ViewController : NSViewController
    {
        // 〜〜〜 抜粋 〜〜〜

        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // 描画処理
            canvas.PaintSurface += (s, e) =>
            {
                // とりあえず塗りつぶしてみる
                e.Surface.Canvas.Clear(SKColors.Green);
            };
        }
    }


関連項目[編集 | ソースを編集]