Windows 原生 headless 复杂文种文本
在 Windows 上,原生外观构建器通过配套的 HarfBuzz 与 FriBidi DLL 对阿拉伯语、希伯来语、组合序列和混合双向文本做 shaping
在第一次复杂 shaping 操作之前,把 HOTPDF_HARFBUZZ_LIBRARY 和 HOTPDF_FRIBIDI_LIBRARY 设为可信的绝对库路径;默认值为 libharfbuzz-0.dll 和 libfribidi-0.dll
按进程架构提供 DLL 及其传递依赖:Win32 应用需要 x86 二进制,Win64 应用需要 x64 二进制
加载 shaping 库之前,把依赖 DLL 放入应用可控的搜索目录;仅给出主 DLL 的绝对路径并不能提供全部依赖库
简单的直接 Unicode glyph 继续使用内嵌字体,不加载 shaping 运行时;需要复杂 shaping 而运行时无法加载或缺少必需符号时报告失败
API 在字段值、ToUnicode 簇和 ActualText 中保留逻辑 Unicode,同时按视觉顺序绘制实际的上下文 glyph
CharacterSpacing 与 WordSpacing 对每个 shaped 簇应用一次并参与排版测量;调用方取消以及 glyph、字体和对象预算同样生效
原生验收套件在两种 Windows 架构上验证真实的 Delphi 和 FPC 进程,并以独立的 glyph、步进和 MuPDF 像素检查对照 Linux 输出
shaping 与外观契约参见 HPDFShapeHeadlessText 和 THPDFHeadlessTextAppearanceOptions