1

ImageSource の画像をファイルにキャッシュしたいので、URI でそれを指すことができますが、そのための呼び出しが見つかりません。問題は、オンラインで見つけることができるすべてのサンプル コードが WPF 用であり、使用されているクラスが WinRT に存在しないことです。

Windows.Graphics.Imaging 名前空間にはいくつかのクラスがありますが、それらとそのメソッドを検索してわかる限り、必要な機能を備えたクラスはありません。

ImageSource があります。画像をファイルに書き込みたい。私は何をしますか?

4

2 に答える 2

0

また、ImageSourceプロパティは通常BitmapImageです(XAMLでURIを使用してImageSourceを指定する場合のデフォルト)。場合によっては、ビットマップのピクセルを編集したい場合があります。ここで、WriteableBitmapを使用します。次に、DirectX相互運用機能を実行して高品質で高性能なグラフィックを描画する場合は、 SurfaceImageSourceVirtualSurfaceImageSourceがあります。

WinRT XAML Toolkitは、画像のロードと保存に役立つイメージング名前空間にいくつかの拡張メソッドを備えたオープンソースライブラリです。BitmapImageを保存できるものは見当たりませんが、UriSourceプロパティを使用して画像の出所を確認し、そこからダウンロードすることはできますが、必要になるため、帯域幅の浪費のように聞こえます。 2回ダウンロードします。

正確なシナリオはわかりませんが、Webから画像をダウンロードしていると仮定すると、最初に画像をダウンロードするのが最善の場合があります(たとえば、Net.WebFile.SaveAsync()メソッドを使用してから、それに基づいてBitmapImageを作成します)。一方、Webアドレスを指定してBitmapImageを開くと、画像は自動的にキャッシュされます(たとえば、 「ニュース」アプリ)なので、キャッシュを自分で管理するよりも、WebURIを使用して画像を開く方がよいでしょう。これは簡単なことではありません。

于 2012-10-19T19:18:30.570 に答える