【发布时间】:2013-01-10 14:11:51
【问题描述】:
我有一个用 C# / .NET 4 编写的 Windows 窗体应用程序,其中包括一个带有 BackgroundImage 的 Button 控件。使用的图像比按钮大,但BackgroundImageLayout 属性是Zoom,因此它被缩放到按钮的大小。
在 Windows 7 上,图像看起来不错。但是,在 Windows XP 上,图像看起来很糟糕。它看起来好像只是通过删除线来缩放。
谁能确认这是预期的行为,除了自己缩放图像并使用按钮中的缩放版本之外,我是否可以做任何事情来修复 Windows XP 上的外观?
谢谢。
【问题讨论】:
-
简答:自己扩展。
-
存在差异的原因可能有很多...屏幕分辨率/颜色深度、显卡...
-
@Don:我已经排除了色深(设置为全色)和显卡(我可以在 VM 中重现)。它发生在各种机器上。共同因素是操作系统。
-
并不是说它可能会有所不同,但是您是否运行 dxdiag 来比较/对比机器视频输出的任何差异?
-
“我可以在 VM 中重现它”不是一个很好的提示,VM 通常在低色模式设置中模拟视频适配器。专注于您在例如 Paint 事件处理程序中为 e.Graphics.InterpolationMode 获得的值。当您获得低质量值时,您无能为力,只能自己缩放图像。
标签: c# winforms .net-4.0 windows-xp