Inkcanvasを保存します
-
15-09-2020 - |
質問
私のアプリケーションでは、ユーザーは複数のオブジェクト(いわゆる図面)を作成することができます。これは、SDKSAMPLES(MS表面SP1 SDKによって提供されている)のPhotoPad(Photo Paint App)と非常によく似ています。 TENSまたは何十ものそれらを作成したことがあるという事実を考慮して、Inkcanvas(描画オブジェクト)の内容を保存する最善の方法は何でしょう。
研究の後、1つのオプションがポップアウトされた:画像、JPG、またはPNGに変換するが、このメソッドはスケーラブルなIMOであるようです。
データベースにポイントを格納することは可能です(好ましくはSQLite)?
目標は、ロード時にさらに編集するために図面(Inkcanvasの内容)を復元できるようにすることです。
他のヒント
ビットマップからのベクトル回線を復元することは、ビットマップからの復元が非常に難しく、潜在的に潜在的に潜在的に潜在的に無限があり、データ密度の観点
Strokesプロパティに保存されている行のコレクションを保存および復元するためのコードを作成できます。これにより、データのサイズを最小限に抑えることができ、データベースに簡単に保存できます。各ストロークには、行がどのように見えるか、およびその行を構成するポイントのセットに関するデータがいくつかあります。リロード時にそのデータを別のInkcanvasに抽出して復元するのはかなり簡単です。
XamlWriter / xamLreaderを使用してInkcanvas全体をXMLにシリアル化できるようにすることもできますが、新しいデシリアル化されたインスタンスをUIに入れることができる必要があり、命名またはリソースの合併症があることを確認する必要があります。この方法でエラーを引き起こす傾向があるXAML。