direct2d - DirectWrite + Direct2D 自定义文本渲染毛茸茸
问题描述
我正在评估 Direct2D 以用于研究目的,在此期间,我决定使用 DirectWrite 自定义文本渲染器渲染我常用的帮助文本,该渲染器将文本转换为路径几何图形以添加轮廓(如DWriteHelloWorld中所示MSDN 上的示例)。
然而,有些字母上有奇怪的“毛”或“角”(图片:笔画宽度为 3 和 5)。
也试过用其他字体(fe Consolas),效果是一样的。
源代码(VS 2015): https ://www.dropbox.com/s/v3204h0ww2cp0yk/FOR_STACKOVERFLOW_12.zip?dl=0
解决方案
我怀疑其原因是 D2D 中的默认展平容差不能很好地用于以足够小的尺寸呈现字形轮廓。根据 GetRecommendedRenderingMode(),通常您会为小尺寸使用位图渲染,而为较大尺寸使用轮廓渲染。如果您将字体大小增加 10 倍,您是否有相同的工件?
推荐阅读
- python - 我尝试制作 Jarvis 的菜鸟版本,但循环播放时遇到问题
- javascript - 带有 html 内容的 bootstrap 5 弹出框
- google-app-engine - php项目中计算引擎到应用引擎排队系统的变化
- c++ - 从使用子类对象初始化的超类数组访问子类数据成员
- windows - 为什么我的 powershell 脚本没有正确包装我的路径?
- google-apps-script - 为组合图定义系列类型的问题
- json - 计算另一个 JSON 数组中数组的大小:SQL SERVER
- javascript - html select 属性不显示数据库中的值,而是显示第一个选项
- wordpress - Google API 密钥限制 - 白名单 IP 和 HTTP 引荐来源网址
- java - 无法解析符号“标签”