调整 TrueType 字体文本质量(第 1 部分,共 2 部分)

引言

 

ODA 软件可以通过两种方式对 TrueType 字体进行矢量化:

 

  • 恒定文本质量(默认)— TrueType 字体内部的曲线默认进行曲面细分,因此字符被绘制为具有恒定顶点数量的简单壳体图元。
  • 动态 TTF PolyDraw 模式 — 贝塞尔曲线信息额外传递到几何传输器中,因此客户端代码可以使用 TrueType 字体处理所需的任何质量来细分文本。

最佳方式取决于应用程序要求。恒定文本质量调整通常更适合导出、渲染为栅格图像等。对于编辑器和查看器等动态应用程序,TTF PolyDraw 模式通常更适合,它可以根据缩放级别、内存限制和其他要求来增加或减少文本渲染质量。

恒定 TrueType 字体文本质量调整适用于所有平台。TTF PolyDraw 模式目前仅支持桌面 Windows 操作系统。

TrueType 字体的恒定文本质量(默认)

以默认质量矢量化的 TrueType 字体文本:

 

image1

 

放大显示默认质量下矢量化的TrueType字体文本片段:

 

image2

 

默认情况下,文本质量设置为50%。以下图片显示文本质量被覆盖为75%:

 

image3 image 4

 

生成的文本镶嵌更准确,但在放大文本上仍然可以看到一些轻微的棱角。将文本质量提高到100%,结果文本镶嵌看起来很理想:

image5

 

调整.dwg文件的恒定文本质量

 

对于.dwg文件,可以使用“TEXTQLTY”系统变量更改恒定文本质量。默认情况下,它设置为50%。ODA文档描述了如何通过编程方式更改系统变量:获取和设置系统变量(需要登录)。您可以使用控制台在OdaMfcApp和TeighaViewer示例中更改此变量。请记住,在更改系统变量后调用REGEN命令,以便在启用图形缓存时重新生成图形缓存。

 

一般情况下调整恒定文本质量

 

调整文本矢量化质量的通用方法是重写OdGiContext::textQuality()方法(参见ODA文档,需要登录)。这适用于所有使用Visualize SDK的ODA产品。OdGiContext由所有矢量化过程调用,因此textQuality()方法可用于调整任何区域的TrueType字体文本质量。默认情况下,textQuality()方法返回质量设置为50%。每个ODA产品,包括绘图(用于.dwg和.dgn文件)、BIM和PRC,都有自己的OdGiContext实现;例如,在绘图SDK中,此类的名称是OdGiContextForDbDatabase。每个OdGiContext实现都可以有自己的textQuality()方法的重写和实现,就像OdGiContextForDbDatabase中一样,但您可以在从所需的OdGiContext实现继承的自己的类中再次重写此方法,并将其传递给ODA矢量化框架,这没有问题。

 

本系列的下一篇文章将介绍如何使用TTF PolyDraw模式。

今天就开始行动

免费试用 ODA 软件 60 天。
无风险,无需信用卡。

免费试用