|
|
|
|
||||||||
|
|
|
|
||||||||
|
|
||||||||||
|
|||||||||||
|
|
|
|
||||||||
|
|
||||||||||
|
|||||||||||
|
|
|
|
||||||||
|
|
||||||||||
|
|||||||||||
|
|
|
|
||||||||
|
CanvasView |
||||||||||
|
|||||||||||
描画キャンバスを表示するクラスです。
CanvasViewクラスでは、ドラッグ/スワイプ動作で書かれた軌跡を描画する事が可能です。
また、描画されたものをImageオブジェクトとして取得する事が可能です。
このクラスでは、標準の色定数($BLACK、$FF0000など)とは別に、任意の色が利用できます。
色情報は以下の形式の文字列で表します。
"#RRGGBB"
1文字目 |
# |
2,3文字目(RR) |
赤色成分を表す16進数(00〜FF) |
4,5文字目(GG) |
緑色成分を表す16進数(00〜FF) |
6,7文字目(BB) |
青色成分を表す16進数(00〜FF) |
(例)オレンジ色 : "#FFA500"
"#AARRGGBB"
1文字目 |
# |
2,3文字目(AA) |
アルファ値(不透明度)を表す16進数(00〜FF) |
4,5文字目(RR) |
赤色成分を表す16進数(00〜FF) |
6,7文字目(GG) |
緑色成分を表す16進数(00〜FF) |
8,9文字目(BB) |
青色成分を表す16進数(00〜FF) |
例)半透明のライムグリーン : "#8032CD32"
色定数に定義されている色の場合、文字列形式を指定しても色定数が優先されます。
$STDを指定すると、標準の色(黒:#000000)が設定されます。
CanvasViewクラスでは、描画操作を記録し取り消しや再生を行う事が出来るバッファを持っています。 これをUndo/Redoバッファと呼びます。
Undoバッファは操作を取り消す方法を、Redoバッファは取り消した操作を再生する手順を記録しています。
何らかの描画操作を行った際(例えば手書き描画で一画を書くなど)、その操作は記録はUndoバッファに登録されます。
この状態でUndoメソッドを呼び出すと、その操作は取り消されます。取り消された操作はRedoバッファに登録されます。
Redoバッファに操作が登録されている場合、Redoメソッドを呼び出すことでその操作を再生できます。
Undo/Redoバッファは、最大50件まで登録されます。 この中には現在の状態も1件としてカウントされています。
Undoバッファに何らかの操作を記録した際、Redoバッファの中身はリセットされます。
CanvasViewクラスでは、ピンチ操作により最大5倍まで拡大表示することができます(画像の高さか幅が5pixel未満の場合、拡大率の最大値は5.0より小さくなります)。 *1
拡大表示されている間は、二本指でのパン操作により表示位置を移動させることができます。
拡大率の取得と指定にはZoomRatioプロパティを使用します。
また、SetImage、ResetImageメソッドで背景画像を変更した場合、拡大率は元に戻ります。
Snapshotメソッドで画像を取得する際、ピンチ操作で拡大表示された画像を取得するかどうかを指定することができます。