GetOpenTypeGlyphRun

文本、字体、诊断

描述

根据现有字体句柄塑形 Unicode 文本,并将生成的字形序列作为 JSON 返回

语法

Delphi

Function TPDFlib.GetOpenTypeGlyphRun(FontID: Integer; Const Text: WideString; Options: Integer; Out GlyphRunJSON: WideString): Integer;

参数

FontID源字体程序可用的 TrueType 或 OpenType 字体句柄
Text要整形的 Unicode 文本
Options位 0 选择从右到左方向;位 1 强制使用有界 Pascal 回退
GlyphRunJSON接收方向、总前进量和视觉字形数组

返回值

成功时返回字形数量,输入无效或塑形失败时返回 0

JSON 架构

{"rtl":true,"advance":1470,"glyphs":[{"id":993,"cluster":3,"advance":338,"offsetX":0,"offsetY":0}]}

备注

id 是字体字形 ID;cluster 是从零开始的 UTF-16 源索引;前进量和偏移量以 em 的千分之一表示

字形按视觉顺序返回,并使用 DrawOpenTypeText 所采用的相同位置

在诊断期间使用选项位 1,将原生结果与受资源限制的 Pascal GSUB 和 GPOS 回退结果进行比较

另请参阅

DrawOpenTypeText、GetOpenTypeTextWidth