虽然我喜欢在 WPF 和 XAML 中开发用户界面,但我也尝试通过将图标创建为矢量图像来拥抱可扩展性......但这真的很难!我很少能获得与光栅图形相同的清晰度,而且我几乎总是需要更长的时间来制作图标。
我是在浪费时间吗?制作可缩放图标没有好处吗?或者 Windows 中是否有某个设置可以缩放 UI 以实现可访问性,从而使可扩展性变得重要?
欢迎您的建议。 :)
最佳答案
在 WPF 中使用矢量/可缩放图形有一些优点。从我的头顶上掉下来:
- 您可以构建适应用户 DPI 设置的高保真 UI - 请参阅 this blog post了解更多信息
- 您可以缩放 UI 中的图像(例如使用 ViewBox 拉伸(stretch)图标),从而实现“可缩放”界面
- 文件大小大大减小,特别是对于较大的图像
- 您不必兼顾不同的图像尺寸和分辨率
- 您可以直接在 Blend 中编辑图像
这种方法的一个问题是,如果不缓存矢量图标,可能会给 CPU 带来更大的压力(要缓存,请将 UIElement.CacheMode
设置为 BitmapCache
)。
如果您 100% 确定图标将保持相同的大小,您可以安全地使用光栅图像 - 只需执行您认为对您的情况更有效的操作即可。
关于wpf - 为什么 UI 的可伸缩性在 WPF 中很重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4031584/