Imaging for WinRT XAML
トリミングボックスのドラッグによるトリミング
全て展開全て展開
すべて折りたたむすべて折りたたむ

クライアント側で画像を完全にトリミングできれば、とても便利です。Windows ストアアプリケーションでは、C1Bitmap または WriteableBitmap クラスを使用してこれを実現できます。C1Bitmap コンポーネントには、あらゆるビットマップ関連操作を実行する際に簡単に使用できる API が用意されています。この API は、単純に色を取得および設定することができ、GetPixel および SetPixel メソッドを使用してピクセルに直接アクセスできます。

次の XAML は、トリミング領域を作成するために必要な要素を定義します。トリミング領域を作成するには、XAML マークアップに <Grid> 要素を追加して XAML にイメージマスクを作成し、コードビハインドでユーザーの選択に基づいて画像にイメージマスクを適用します。

XAML でマークアップの書き方

以下のコードは、画像にトリミング効果を実装します。このコードは、ユーザーがトリミングする画像の範囲を選択すると、OnDragStarted イベントと OnDragDelta イベントを使用して水平方向と垂直方向の変更をキャプチャします。さらに、計算によって開始点と終了点の値を求め、それらの点を Rect オブジェクトに変換します。

C# コードの書き方

マスクの各部の範囲に多少のロジックを適用します。

C# コードの書き方

UpdateMask() メソッドは、Grid Rect の LeftTopWidth、および Height プロパティに基づいて、すべての Grid マスク要素の位置を更新します。

C# コードの書き方

関連トピック

 

 


Copyright © GrapeCity inc. All rights reserved.