DrawOpenTypeText

文字、字型、OpenType shaping

描述

以既有字型控制代碼關聯的記憶體內字型程式,對 Unicode 文字做 shaping 並繪製

語法

Delphi

Function TPDFlib.DrawOpenTypeText(XPos, YPos: Double; FontID: Integer; Size: Double; Const Text: WideString; Options: Integer): Integer;

參數

XPos, YPos文字原點,以頁面單位計
FontID來源字型程式可取得的 TrueType 或 OpenType 字型控制代碼
SizeThe text size in points
Text要做 shaping 並繪製的 Unicode 文字
Options位元 0 選擇由右至左方向;位元 1 強制使用有界的 Pascal 後備,取代原生 OpenType 引擎

傳回值

shaping 後的文字被接受時傳回 1;字型無效、文字為空、大小非正值、字型程式遺失或 shaping 失敗則傳回 0

備註

可攜的原生引擎直接從字型位元組套用 OpenType 文字塑形、GSUB 替換、GPOS 定位與視覺字形排序,不需要安裝系統字型

原生模組無法使用時,有大小上限的 Pascal 回退實作支援 cmap 對應、阿拉伯文接合、預設 GSUB 替換,以及常見的 GPOS 單一、成對、草書與標記附著查找

輸出使用可重用的 Identity-H 伴隨字型、依字形閉包對內嵌程式做子集化、保留必要的可變與彩色字型表,並把來源叢集寫入 ToUnicode 供文字擷取

Windows 上請把 PDFlibOpenType32.dll 或 PDFlibOpenType64.dll 部署在執行檔旁;Linux 用 libPDFlibOpenType.so,macOS 用 libPDFlibOpenType.dylib

PDFLIB_OPENTYPE_ENGINE 可指定明確的原生模組路徑

另請參閱

GetOpenTypeTextWidth, GetOpenTypeGlyphRun, DrawShapedText