DrawShapedText

文字

說明

本頁說明 PDFlibPas「文字」主題下的 DrawShapedText。API 名稱、參數、類別名稱、檔案名稱及字面值均保持原樣,與 Delphi 函式庫和 DLL 進入點完全對應。

呼叫函式前請先查看語法、參數及傳回值。

語法

Delphi

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

參數

XPos/YPos 以頁面單位定位文字位置。FontName 指定已安裝的字型(例如 Arial)。Size 為文字大小(點數)。Text 為要整形並繪製的字串。Options 位元 0 選擇從右至左的基本段落方向;阿拉伯文或希伯來文請設定此位元。

傳回值

成功時傳回 1;整形引擎不可用、指定字型未安裝或 Text 為空時傳回 0。

備註

文字在繪製前會先透過系統整形引擎進行整形,因此阿拉伯字母會採用正確的詞首、詞中、詞末或獨立形態,lam-alef 等強制連字也會套用,從右至左的文字段也會以正確的視覺順序輸出。整形後的字符透過配套的 Type0(Identity-H)字型以字符索引方式寫入,使那些沒有字元碼的字形也能正確呈現。每個字型名稱建立一個配套字型,同一份文件後續呼叫會重複使用。儲存文件時,嵌入的字型程式會精簡為文件實際使用的字符子集,包含真實的逐字符寬度及 ToUnicode 對應表,可將每個整形字符還原回原始字元——因此從輸出 PDF 複製或擷取的文字會傳回原始字串(包括連字)。定位精確:整形引擎產生的每個字符步進量均寫入內容串流,因此列印版面與 GetShapedTextWidth 的整形量測結果完全吻合。