0

画像が読み込まれるとすぐに、WPF アプリケーションで画像をトリミングしてサイズを変更する必要があります。したがって、私の基本画像のサイズは VGA (640x480) で、エッジをトリミングする必要があります (上を 18 ピクセル、下を 36 ピクセル、左を 48 ピクセル、右を 24 ピクセル)。新しい画像 (568 x 426 ピクセル) を元のサイズ (640 x 480 ピクセル) に再調整する必要があります。基本的には、写真で使用しているデジタルズームのようなものです。

私はすでにいくつかのサンプル コード ( C# で画像から空白を切り取る) を見つけましたが、画像の空白を検出する必要がないため、これは少し複雑すぎます。これを行うために XAML を使用するだけの単純なアルゴリズムはありますか?

前もって感謝します。

4

1 に答える 1

1

Classを使えばそれができるはずだと思います。リンクされたページから:使用可能なスペースを埋めるために単一の子を拡大およびスケーリングできるコンテンツ デコレータを定義します。文字通りあなたに1つ追加し、あなたをコンテンツとして設定すると、プロパティを設定して、表示する画像の部分を制御できます。ViewboxWindowImage

<ViewBox Width="500" Height="500" Stretch="Uniform">
    <Image Source="Images/SomeImage.jpg" Width="300" Height="300" 
        Margin="-48,-18,-36,-24" />
</ViewBox>

さまざまな値を試し、 を負の値にStretchDirection設定しMarginてトリミングします。リンク先のページに例がありますが、さらにヘルプが必要な場合はお知らせください。

于 2014-01-23T16:18:06.213 に答える