PDFiumPas 文档

Author 属性

此 API 条目保留标识符、签名、代码块和 PDF 术语的原始形式
组件: TPdf  ·  单元: PDFium
返回 PDF 文档信息字典中 /Author 条目的值

语法

property Author: WString; // read only

说明

Author 返回原始文档作者的可读名称,也就是作者本人或组织的名称。内部来看,该属性只是 MetaText['Author'] 的一层薄封装,而后者又会调用 PDFium 的 FPDF_GetMetaText 来读取文档信息字典中的 /Author 字符串(该字典由 trailer 的 /Info 键引用,参见 ISO 32000-1,第 14.3.3 节 "Document Information Dictionary")

如果文档没有声明作者,或者文档当前未加载,结果就是空的 WString。这个属性不会抛出异常,空字符串就是“未记录作者”的正确哨兵值。由于底层 PDFium API 会把原始的 PDFDocEncodingUTF-16BE 字节串解码为 UTF-16,结果始终以 Delphi 原生的 WideString 编码返回,可以直接赋给 TStringsTLabel 或任何其他支持 Unicode 的界面

该属性为只读。若要为新建或已加载的文档设置作者,请直接对 Document 句柄使用更底层的 FPDF_SetMetaText 导入,或者通过元数据流编写 / 刷新 XMP 包

备注

示例

procedure TForm1.ShowDocumentInfo;
begin
  Pdf1.FileName := 'C:\Docs\Report.pdf';
  Pdf1.Active := True;
  try
    Memo1.Lines.Add('Title: ' + Pdf1.Title);
    Memo1.Lines.Add('Author: ' + Pdf1.Author);
    Memo1.Lines.Add('Subject: ' + Pdf1.Subject);
    if Pdf1.Author = '' then
      Memo1.Lines.Add(' (no /Author entry in info dictionary)');
  finally
    Pdf1.Active := False;
  end;
end;

另请参阅

Title, Subject, Creator, Producer, Keywords, MetaText, CreationDate, ModifiedDate