0

我想要

  • 从资源加载图像
  • 设置图像宽度,确保它按比例缩放其高度。
  • 将其用作背景画笔

它无法弄清楚“设置其宽度”部分。

我目前使用的折衷方案是将其缩小到一半。这不是我理想中想要做的,我想将宽度设置为绝对值,而不管原始图像大小是多少。

<BitmapImage x:Key="floorPlan"
        UriSource="/NavigationPathEditor;component/Images/CairnsFloorPlansCropped.png"/>

<TransformedBitmap x:Key="resizedFloorPlan" Source="{StaticResource floorPlan}">
    <TransformedBitmap.Transform>
        <ScaleTransform 
                CenterX="0"   CenterY="0" 
                ScaleX="0.5"  ScaleY="0.5" />
    </TransformedBitmap.Transform>
</TransformedBitmap>

<ImageBrush 
      x:Key="floorPlanBrush" 
      TileMode="None" Stretch="None" 
      AlignmentX="Left" AlignmentY="Top"
      ImageSource="{StaticResource resizedFloorPlan}" />

(顺便说一句,上面的代码在运行时工作,但在设计器中抛出错误)

4

1 回答 1

1

最简单的方法可能是在图像本身上设置DecodePixelWidth/ 。Height

于 2012-02-02T22:59:46.830 回答