2015-05-15 42 views
0

我有一個奇怪的問題,導致圖像變形,如果我重新調整窗口大小到一個特定的大小。我假設圖像被定位在scrollviewer內的一個子像素位置,但我不確定如何解決這個問題。ScrollViewer中的圖像失真

我使用的是Scaletransform,但如果如果你看一下截圖下面的文字,你會看到文本稍微扭曲的比例設置爲1。

當前的問題正在發生,如果我重新調整窗口大小的單個像素,失真消失,如在備用屏幕截圖中看到的。

象素失真

Pixel Distortion

不變形

No Distortion

XAML代碼

<ScrollViewer x:Name="scrollViewer" 
      Background="#282828" 
      Focusable="False" 
      Grid.Column="2" 
      HorizontalScrollBarVisibility="Visible" 
      VerticalScrollBarVisibility="Visible" SnapsToDevicePixels="True"> 

<Border BorderBrush="Red" BorderThickness="1"> 
    <Grid Name="grid" RenderTransformOrigin="0.5,0.5"  SnapsToDevicePixels="True"> 
     <Grid.LayoutTransform> 
      <TransformGroup> 
       <ScaleTransform x:Name="scaleTransform" CenterX="0.5" CenterY="0.5" /> 
      </TransformGroup> 
     </Grid.LayoutTransform> 


     <Image Name="img" HorizontalAlignment="Left" VerticalAlignment="Top" 
       IsHitTestVisible="False" 
       RenderOptions.BitmapScalingMode="NearestNeighbor" 
       SnapsToDevicePixels="True" 
       Stretch="Uniform" /> 

    </Grid> 
</Border> 
</ScrollViewer> 

回答

1

只是一個預感:你有沒有試過申請UseLayoutRounding

+0

就是這樣,謝謝。 – TimD