True) 또는 단순히 참조만 되어 있고 표시 시 운영체제에서 해석되는지(False)를 나타냅니다property FontIsEmbedded[Index: Integer]: Boolean; // read only
FontIsEmbedded는 지정한 인덱스의 텍스트 페이지 객체가 참조하는 폰트가 실제 글리프 프로그램을 PDF 파일 안에 함께 지니고 있는지 알려 줍니다. 임베드된 폰트는 문서와 함께 이동하므로 어떤 플랫폼에서도 똑같이 렌더링되지만, 임베드되지 않은(참조만 하는) 폰트는 뷰어가 같은 이름의 폰트를 로컬에서 찾아야 하며 화면에서 대체 폰트로 바뀔 수 있습니다
인덱서는 0 기반 페이지 객체 인덱스입니다(0..ObjectCount - 1). 텍스트가 아닌 객체는 항상 False를 반환합니다. 프로퍼티를 읽기 전에 페이지가 활성화되어 있어야 합니다
임베드는 전체(원본 폰트의 모든 글리프가 포함)일 수도 있고 서브셋(실제 쓰인 글리프만 담기고 베이스 이름에 여섯 글자 접두사가 붙음)일 수도 있는데, 여기서는 둘 다 임베드로 셉니다. PDF/A 부합을 위해서는 모든 폰트가 임베드되어야 하므로 — 이 프로퍼티가 그 요건을 빠르게 점검하는 도구가 됩니다
| Index | 0..ObjectCount - 1 범위의 0 기반 페이지 객체 인덱스입니다 |
True 반환값만으로 임베드가 전체인지 서브셋인지 알 수 없습니다 — FontBaseName에 ABCDEF+ 접두사가 있는지 확인하면 서브셋을 판별할 수 있습니다FontData는 폰트가 임베드된 경우에만 데이터를 반환합니다False를 반환합니다var
I, EmbeddedCount, TextCount: Integer;
begin
Pdf1.PageNumber := 1;
EmbeddedCount := 0;
TextCount := 0;
for I := 0 to Pdf1.ObjectCount - 1 do
if Pdf1.ObjectType[I] = otText then
begin
Inc(TextCount);
if Pdf1.FontIsEmbedded[I] then Inc(EmbeddedCount);
end;
ShowMessage(Format('%d of %d text objects use embedded fonts',
[EmbeddedCount, TextCount]));
end;