/Author 항목 값을 반환합니다property Author: WString; // read only
Author는 원본 문서를 작성한 사람이나 조직의 사람이 읽을 수 있는 이름을 반환합니다. 내부적으로 이 속성은 MetaText['Author']의 얇은 래퍼이며, 다시 PDFium의 FPDF_GetMetaText를 호출해 문서 정보 사전의 /Author 문자열을 읽습니다
이 사전은 트레일러의 /Info 키가 가리키며, ISO 32000-1 14.3.3절 "Document Information Dictionary"를 참조합니다
문서에 author가 선언되어 있지 않거나 문서가 현재 로드되지 않은 경우 결과는 빈 WString입니다. 이 속성은 예외를 발생시키지 않으며, 빈 문자열이 "기록된 author 없음"을 나타내는 올바른 값입니다. 기반 PDFium API가 원시 PDFDocEncoding 또는 UTF-16BE 바이트 문자열을 UTF-16으로 디코딩해 주므로 결과는 항상 Delphi의 네이티브 WideString 인코딩으로 반환되며 TStrings, TLabel 또는 다른 Unicode-aware 표면에 바로 대입해도 안전합니다
이 속성은 읽기 전용입니다. 새로 만든 문서나 로드한 문서에 author를 설정하려면 Document 핸들을 대상으로 더 낮은 수준의 FPDF_SetMetaText import를 사용하거나, 메타데이터 스트림을 통해 XMP packet을 작성하거나 갱신하면 됩니다
True여야 하며, 즉 문서가 로드되어 있어야 합니다. 비활성 컴포넌트에서 읽으면 빈 문자열만 반환되며 누락된 항목에 대해 예외는 발생하지 않습니다FE FF)이 앞에 붙은 UTF-16BE 바이트 문자열로 저장합니다. PDFium은 두 형식 모두를 디코딩하므로 인코딩을 직접 다룰 필요가 없습니다Author가 비어 있지만 Acrobat 속성 대화상자에서 author가 보인다면 XMP packet(dc:creator)에서 값을 찾아보세요
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;