ビットマップ画像情報をXAML形式のファイルに保存する必要があります。誰かがこの点で私を助けてくれますか?
2 に答える
それはできない(チャールズ・ペツォルド)
もちろん、XAML ファイルで外部ビットマップを参照することはできますが、XAML ファイルにビットマップを埋め込むことはできません。必要なのは、Data という名前のプロパティを持つ BitmapSource から派生したクラス、またはバイト配列に設定できるものと、XAML ファイルで引用符で囲まれたバイトのリストを受け入れるコンバーターです。そして、そのようなクラスは存在しません。
本当にすべきでないことは、奇妙で危険なアイデアを得ることです。たとえば、ピクセルごとに 1 つずつ、1 ピクセルの正方形の Rectangle オブジェクトの束を含む UniformGrid を使用してビットマップをシミュレートする可能性があります。それはただのナッツです。
そのようなクレイジーな考えを考え始めると、6K 220×260 カラー JPEG を1.9 メガバイトの EmbeddedBitmap.xamlファイルに変換する可能性が高くなり、 読み込みと構成に時間がかかりすぎます。
確かにあなたはそれよりも優れたセンスを持っています!
小さなボタン画像をpng形式で埋め込むなど、いくつかのケースでは有効なリクエストになると思います。試したことはありませんが、次のことが有効だと思います。
- base-64 でエンコードされた画像を含む文字列を xaml コードに埋め込みます
- bas-64 文字列を取り、Image を返すコンバーターをインスタンス化します。
- Image オブジェクトを xaml に配置し、base-64 文字列にバインドし、前述のコンバーターを使用します
ところで、コンバーターなしで可能なケース (小さなアイコン) が HTML ページに埋め込まれているのを見たことがあります。