property FontAscent[Index: Integer; FontSize: Single]: Single; // read only
FontAscent는 지정한 인덱스의 페이지 객체가 참조하는 폰트의 ascent 지표를 알려 줍니다. ascent는 베이스라인에서 폰트에서 가장 키가 큰 글자들(대문자, 악센트, 'l', 'h', 'k' 같은 ascender)이 닿는 최고점까지의 수직 거리입니다. 결과는 PDF 사용자 공간 포인트로 표현되며 넘긴 FontSize에 맞춰 이미 스케일되어 있습니다
Index 인덱서는 0 기반 페이지 객체 인덱스입니다(0..ObjectCount - 1). 두 번째 인덱서 FontSize는 지표를 계산할 PDF 포인트 크기입니다. 실제 렌더링할 크기를 넘기거나, 기존 텍스트 런의 크기를 그대로 쓰려면 CharacterFontSize[n]을 사용하세요. 프로퍼티를 읽을 때는 페이지가 활성화되어 있어야 합니다
FontDescent와 함께 쓰면 폰트의 전체 줄 높이가 나옵니다. LineHeight := FontAscent - FontDescent (descent는 보통 음수입니다). 폰트에 해당 지표가 없거나 인덱스가 가리키는 객체가 텍스트가 아니면 PDFium은 0을 반환합니다
| Index | 0..ObjectCount - 1 범위의 0 기반 페이지 객체 인덱스입니다 |
| FontSize | 지표를 스케일할 PDF 포인트 단위 폰트 크기입니다. 보통 폰트를 렌더링할 크기를 넣습니다(예: 10.0, 12.0) |
FontSize 하나만 쓰지 말고 ascent와 descent를 조합하세요var
I: Integer;
Asc: Single;
begin
Pdf1.PageNumber := 1;
for I := 0 to Pdf1.ObjectCount - 1 do
begin
Asc := Pdf1.FontAscent[I, 12.0];
if Asc > 0 then
Memo1.Lines.Add(Format('Object %d: ascent = %.2f pt', [I, Asc]));
end;
end;