2

この質問、High Quality Image Scaling Libraryを読みましたが、GDI+にのみ関係します。

アプリでスケールダウンするImageと、非常にギザギザになります。

Imageダウンスケーリングの品質を向上させることができるプロパティがクラスに見つかりません。

これどうやってするの?

編集:

私は今このコードを使用しました:

BitmapImage img = new BitmapImage();
img.UriSource = new Uri(Graphic, UriKind.Relative);
return img;

ここGraphicで、stringは画像へのパスを含みますが、次の例外が発生しています。

タイプ'System.ArgumentException'の例外がWeather.DLLで発生しましたが、ユーザーコードでは処理されませんでした

追加情報:指定されたSystem.UriをWindows.Foundation.Uriに変換することはできません。詳細については、http: //go.microsoft.com/fwlink/?LinkID=215849を参照してください。

私の知る限りWindows.Foundation.Uri、フレームワークでは使用されていません.net

では、なぜこのエラーが発生するのでしょうか。

4

3 に答える 3

10

XAMLの場合:

    <Image Width="250" Height="250" Stretch="UniformToFill">
        <Image.Source>
           <BitmapImage UriSource="{Binding ImagePath}" DecodePixelHeight="250"/>
        </Image.Source>
    </Image>

C#の場合:

    BitmapImage bitmapImage = BitmapImage("URL HERE");
    bitmapImage.DecodePixelHeight = 250;

DecodePixelHeightまたはDecodePixelWidthのみを設定します。

http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapimage.decodepixelheight.aspx

于 2012-10-18T13:03:22.547 に答える
0

画像スケーリングの組み込みサポートを使用することで、発生している問題を完全に回避できる場合があります。

http://msdn.microsoft.com/en-us/library/windows/apps/hh465362.aspx

さまざまな解像度の画像の複数のバージョンを含めることができます (ファイル名は同じですが、既知のサフィックスが付いているか、既知のフォルダーにあります)。システムは、ユーザーのデバイスの DPI に適したものを自動的に読み込みます。

于 2012-10-20T00:56:47.757 に答える
0

最終的に、2 つ目の小さいイメージを作成し、それを縮小する必要があるすべての場所で使用しました。

于 2012-10-18T10:59:11.160 に答える