次の方法で共有


WPF における Ink の使い方入門

Windows Presentation Foundation (WPF) には、デジタル インクをアプリに簡単に組み込むことができるインク機能があります。

[前提条件]

次の例を使用するには、まず Visual Studio をインストールします。 また、基本的な WPF アプリを記述する方法を理解するのにも役立ちます。 WPF の概要については、「 チュートリアル: 初めての WPF デスクトップ アプリケーション」を参照してください。

クイック スタート

このセクションは、インクを収集する単純な WPF アプリケーションを記述するのに役立ちます。

インクを入手しましたか?

インクをサポートする WPF アプリを作成するには:

  1. Visual Studio を開きます。

  2. 新しい WPF アプリを作成します。

    [ 新しいプロジェクト ] ダイアログで、 インストール済み>Visual C# または Visual Basic>Windows デスクトップ カテゴリを展開します。 次に、 WPF アプリ (.NET Framework) アプリ テンプレートを選択します。 名前を入力し、[ OK] を選択します。

    Visual Studio によってプロジェクトが作成され、 MainWindow.xaml がデザイナーで開きます。

  3. <InkCanvas/> タグ間に<Grid>を入力します。

    InkCanvas タグを持つ XAML デザイナー

  4. F5 キーを押して、デバッガーでアプリケーションを起動します。

  5. スタイラスまたはマウスを使用して、ウィンドウに hello world を書き込みます。

12 回のキーストロークだけで"hello world" アプリケーションと同等のインクを記述しました。

アプリを魅力的にする

WPF のいくつかの機能を利用してみましょう。 開始タグと終了タグ <Window> タグの間のすべてを次のマークアップに置き換えます。

<Page>
  <InkCanvas Name="myInkCanvas" MouseRightButtonUp="RightMouseUpHandler">
    <InkCanvas.Background>
      <LinearGradientBrush>
        <GradientStop Color="Yellow" Offset="0.0" />
          <GradientStop Color="Blue" Offset="0.5" />
            <GradientStop Color="HotPink" Offset="1.0" />
              </LinearGradientBrush>
    </InkCanvas.Background>
  </InkCanvas>
</Page>

このXAMLは、インク入力サーフェスにグラデーションブラシの背景を作成します。

WPF アプリのインクサーフェイスにおけるグラデーションカラー

XAML の背後にコードを追加する

XAML を使用すると、ユーザー インターフェイスの設計が非常に簡単になりますが、実際のアプリケーションでは、イベントを処理するコードを追加する必要があります。 マウスの右クリックに応じてインクを拡大する簡単な例を次に示します。

  1. XAML で MouseRightButtonUp ハンドラーを設定します。

    <InkCanvas Name="myInkCanvas" MouseRightButtonUp="RightMouseUpHandler">
    
  2. ソリューション エクスプローラーで MainWindow.xaml を展開し、分離コード ファイル (MainWindow.xaml.csまたはMainWindow.xaml.vb) を開きます。 次のイベント ハンドラー コードを追加します。

    private void RightMouseUpHandler(object sender,
                                     System.Windows.Input.MouseButtonEventArgs e)
    {
        Matrix m = new Matrix();
        m.Scale(1.1d, 1.1d);
        ((InkCanvas)sender).Strokes.Transform(m, true);
    }
    
    Private Sub RightMouseUpHandler(ByVal sender As Object, _
                                    ByVal e As System.Windows.Input.MouseButtonEventArgs)
    
        Dim m As New Matrix()
        m.Scale(1.1, 1.1)
        CType(sender, InkCanvas).Strokes.Transform(m, True)
    
    End Sub
    
  3. アプリケーションを実行します。 インクを追加し、マウスで右クリックするか、スタイラスで同等の長押しを実行します。

    マウスの右ボタンでクリックするたびに、表示が拡大されます。

XAML の代わりに手続き型コードを使用する

手続き型コードからすべての WPF 機能にアクセスできます。 XAML をまったく使用しない WPF 用の "Hello Ink World" アプリケーションを作成するには、次の手順に従います。

  1. Visual Studio で新しいコンソール アプリケーション プロジェクトを作成します。

    [ 新しいプロジェクト ] ダイアログで、 インストール済み>Visual C# または Visual Basic>Windows デスクトップ カテゴリを展開します。 次に、 コンソール アプリ (.NET Framework) アプリ テンプレートを選択します。 名前を入力し、[ OK] を選択します。

  2. 次のコードをProgram.csまたはProgram.vb ファイルに貼り付けます。

    using System;
    using System.Windows;
    using System.Windows.Controls;
    class Program : Application
    {
        Window win;
        InkCanvas ic;
    
        protected override void OnStartup(StartupEventArgs args)
        {
            base.OnStartup(args);
            win = new Window();
            ic = new InkCanvas();
            win.Content = ic;
            win.Show();
        }
    
        [STAThread]
        static void Main(string[] args)
        {
            new Program().Run();
        }
    }
    
    Imports System.Windows
    Imports System.Windows.Controls
    
    
    Class Program
        Inherits Application
        Private win As Window
        Private ic As InkCanvas
    
    
        Protected Overrides Sub OnStartup(ByVal args As StartupEventArgs)
            MyBase.OnStartup(args)
            win = New Window()
            ic = New InkCanvas()
            win.Content = ic
            win.Show()
    
        End Sub
    
    End Class
    
    Module Module1
    
        Sub Main()
            Dim prog As New Program()
            prog.Run()
    
        End Sub
    
    End Module
    
  3. ソリューション エクスプローラーで [参照] を右クリックし、[参照の追加] を選択して、PresentationCore、PresentationFramework、および WindowsBase アセンブリへの参照を追加します。

    PresentationCore と PresentationFramework を示す参照マネージャー

  4. F5 キーを押してアプリケーションをビルドします。

こちらも参照ください