c# - Win2D 的 CanvasControl 的文本在某些屏幕分辨率下会抖动
问题描述
更准确地说,当我在 Windows 中使用某些显示比例时(那些不能产生完美的 1:1 像素布局的显示比例。150%、175% 等),在每次重绘期间,文本并不总是在完全相同的位置重绘自身. 就好像它在跳舞一样。但是,如果我完美地缩放显示(例如 100% 或 200%),则效果不存在。
有解决办法吗?我花了很多时间开发一个自定义文本编辑器,使用 Win2D 的 CanvasControl 绘制 UI 文本,然后发现这一点。在这种情况下我绝对不能继续开发,因为我不知道有更好的替代 Win2D 的 CanvasControl 来为自定义文本编辑器呈现文本。
任何建议都有帮助!谢谢!
解决方案
UWP 针对高分辨率进行了优化。使用的单位是有效像素(epx)。在不同的分辨率下,应用程序将相应地缩放。
为了在各种分辨率下应用一致的性能,有一个非常重要的概念:
在 UWP 应用中,UI 元素的大小、边距和位置应始终为 4 epx 的倍数。
因此,您可以检查您的应用程序并调整文本和控件的大小以适应此原则。
在本文档中查看更多信息:UWP 应用程序设计简介
推荐阅读
- python - 添加行时如何让我的字典 discord.py 机器人停止循环
- r - 如何在 R 中的 list() 上执行嵌套循环?
- bash - 从脚本运行时bash脚本颜色不起作用
- apache-flink - Flink SQL 横向表语法是什么意思
- c - compare_exchange_strong/weak 可能会看到较旧的值吗?
- algorithm - 这意味着我们可以在多项式时间内验证背包问题的解决方案?
- javascript - AngularJS中ngRepeat中的ngRepeat问题
- python - python 3.8 tkinter从方法调用新窗口创建一个空白窗口
- windows - powershell 从对象数组中获取名称
- java - 使用“IN”子句的内容解析器动态查询