PDFiumPas 文件

FontDescent 屬性

此 API 條目保留識別符號、簽名、程式碼塊和 PDF 術語的原始形式。
元件: TPdf  ·  單元: PDFium
傳回頁面物件字型的字型下緣(從基線到最低下垂部的距離),以 PDF 點為單位並按呼叫端提供的字型大小縮放

語法

property FontDescent[Index: Integer; FontSize: Single]: Single; // read only

說明

FontDescent 會回報頁面物件在指定索引所參照字型的下緣量測值。下緣是從基線往下到下垂部所達到最低點的垂直距離,在 PDF 量測中通常是負值,例如字母 'g'、'p' 或 'y' 的尾部。PDFium 傳回的值已按 FontSize 引數縮放為 PDF user-space 點

Index 索引器是 0 起算的頁面物件索引(0..ObjectCount - 1)。FontSize 是要計算量測值時使用的大小;可傳入你預計實際繪製時的大小,或在重現既有文字時傳入 CharacterFontSize 回傳的值。讀取此屬性前頁面必須為作用中狀態

搭配 FontAscent 使用時,下緣可得出在特定大小下的字型總行高:LineHeight := FontAscent - FontDescent。當底層字型沒有暴露這個量測值(例如某些 Type3 字型),或頁面物件不是文字時,PDFium 會回傳 0

參數

Index0 起算的頁面物件索引,範圍為 0..ObjectCount - 1
FontSize用來縮放量測值的 PDF 點字型大小,例如 12.0。請將它對應到實際繪製大小,以取得較真實的下垂部數值

備註

範例

var
  I: Integer;
  Asc, Dsc, LineHeight: Single;
begin
  Pdf1.PageNumber := 1;
  for I := 0 to Pdf1.ObjectCount - 1 do
  begin
    Asc := Pdf1.FontAscent[I, 12.0];
    Dsc := Pdf1.FontDescent[I, 12.0];
    LineHeight := Asc - Dsc;
    if LineHeight > 0 then
      Memo1.Lines.Add(Format('Object %d: line height = %.2f pt', [I, LineHeight]));
  end;
end;

另請參閱

FontAscent, FontSize, FontHandle, FontFamilyName