property FontFamilyName[Index: Integer]: WString; // read only
FontFamilyName 返回给定索引处文本页面对象所引用字体的可读族名。族名就是设计师和用户通常称呼字体的方式,它与 Bold、Italic 或 Oblique 这类样式后缀无关。若要查看完整的 PostScript 名称(通常包含样式),请参见 FontBaseName
索引器是 0 基页面对象索引,范围为 0..ObjectCount - 1。只有文本对象才携带字体,非文本对象返回空字符串。查询该属性前页面必须处于活动状态,请先设置 PageNumber
对于已嵌入的子集字体,即使嵌入字形集不完整,该值仍表示源字体族。当 PDF 引用的是未嵌入字体时,返回的名称就是生成者声明的名称;在 PDFium 以其他物理字体替代渲染的系统上,这里报告的族名仍然是请求的名称,而不是替代字体
| Index | 0 基页面对象索引,范围为 0..ObjectCount - 1 |
WString 处理,不要当作 ANSIABCDEF+FontFamilyName、FontWeight 和 FontItalicAngle 的组合通常就能识别正在使用的确切样式var
I: Integer;
Names: TStringList;
begin
Pdf1.PageNumber := 1;
Names := TStringList.Create;
Names.Sorted := True;
Names.Duplicates := dupIgnore;
try
for I := 0 to Pdf1.ObjectCount - 1 do
if Pdf1.FontFamilyName[I] <> '' then
Names.Add(Pdf1.FontFamilyName[I]);
Memo1.Lines.Assign(Names);
finally
Names.Free;
end;
end;