THPDFTrueTypeData.TryGetMetadata

function TryGetMetadata(out Metadata: THPDFTrueTypeMetadata): Boolean;

在不使用桌面字型 API 的情況下,讀取有界的 name、head、hhea、OS/2、post、glyf、loca 中繼資料

此方法會先初始化結果記錄;缺少必要 metrics、sfnt 簽名或 head magic 無效、units per em 無效、字型邊界反向時回傳 false

TrueType outline 可用性另外檢查 loca 格式、範圍、單調遞增的偏移量與 glyf 邊界;CFF sfnt 字型可以提供中繼資料,TrueTypeOutlines 仍為 false

選用的 name、OS/2、post 欄位使用明確的存在旗標或文件記載的預設值;所有表與欄位存取都先檢查再讀取

此方法不做完整的 glyph 程式驗證,也不判斷 rendering、shaping 或內嵌權限

既有的 cmap 與 metrics API 行為不變;嚴格 Unicode 外觀設定檔會使用額外的 HasUnicodeCmap 與 UnicodeGIDForCodepoint 方法