我已将我的一个Windows应用商店应用转换为通用应用,并为其添加了一个Windows Phone项目。
渲染图形(使用ImageBrushes的图像和矩形)时,即使我将图形设置为不按比例缩放也不会达到预期效果,图形总是会缩放。
实施例: 我有一个名为test.scale-100.png的图像,它是27 * 27像素。 相同的图像存在于名为test.scale-140.png的32 * 32像素大小的图像中,另一个名为test.scale-240.png的图像为59 * 59像素
我通过以下方式在默认布局中使用此图像:
<Image x:Name="imgTest" Source="/Assets/test.png" Stretch="None"/>
当我使用Windows Phone 8.1 WVGA 4英寸仿真器启动我的应用程序时,32 * 32图像显示正确的边界,但实际图像是缩放的(我可以看到这非常简单,因为内容变得模糊)。 / p>
当我使用Windows Phone 8.1 1080p 6英寸仿真器启动应用程序时也会发生同样的情况;图像是59 * 59像素,但图像有点模糊。
如何强制缩放以不执行?
提前感谢您的帮助!
答案 0 :(得分:0)
我不确定。我现在也在寻找解决方案。但我发现Windows Phone 8.1不支持缩放。只有Windows应用商店应用正在进行扩展。请看下面的链接。
http://msdn.microsoft.com/en-us/library/windows/apps/dn263244.aspx
因此,如何缩放图像的方法是使用高度/宽度属性来强制图像大小,或者可以使用BitmapImage及其属性DecodePixelHeight / DecodePixelWidth以及高度/宽度属性来解码图像。
希望它有所帮助;)
答案 1 :(得分:0)
我有同样的问题,我认为这是一个操作系统错误:
测试1
test.scale-100.png +
test.scale-140.png +
test.scale-240.png
= Blurry result
测试2
test.scale-240.png
= Blurry result, again
测试3
test.scale-240.png renamed to test.png
= Sharp result!
问题仅出现在某些资产上,而不是全部。仅在我的情况下,在一些DataTemplates中。我认为在某些情况下系统会错误地缩放图像,结果模糊不清。如果只留下“scale-240”图像,则模糊不清。如果你重命名删除“scale-240”,它会变得尖锐!
总之,将图像命名为test.png并停止。
答案 2 :(得分:0)
正如MSDN所说:
请勿使用尺寸不大于5px倍数的图像。不是5px倍数的单位在缩放到140%,180%和240%时会出现像素移位。
https://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh465362.aspx
您的宽度=“53”高度=“53”可能是行为不正确的问题