/Author ze słownika informacji dokumentu PDFproperty Author: WString; // read only
Author zwraca czytelną dla człowieka nazwę osoby lub organizacji,
która stworzyła oryginalny dokument. Wewnętrznie właściwość jest cienkim
opakowaniem dla MetaText['Author'],
które z kolei wywołuje FPDF_GetMetaText PDFium, aby odczytać
łańcuch /Author ze słownika informacji dokumentu
(słownika wskazywanego przez klucz /Info w trailerze
— zobacz ISO 32000-1, sekcja 14.3.3 "Document Information Dictionary")
Jeśli dokument nie podaje autora albo dokument nie jest aktualnie
załadowany, wynikiem jest pusty WString. Właściwość nigdy
nie zgłasza wyjątku — pusty łańcuch jest poprawnym znacznikiem
braku zapisanego autora. Ponieważ podstawowe API PDFium dekoduje surowy
łańcuch bajtów PDFDocEncoding lub UTF-16BE do
UTF-16, wynik jest zawsze zwracany w natywnym kodowaniu Delphi
WideString i można go bezpiecznie przypisać bezpośrednio do
TStrings, TLabel lub dowolnego innego
interfejsu obsługującego Unicode
Właściwość jest tylko do odczytu. Aby ustawić autora w nowo utworzonym
lub załadowanym dokumencie, użyj niższopoziomowego importu
FPDF_SetMetaText na uchwycie Document
albo utwórz odśwież pakiet XMP przez strumień metadanych
True (dokument musi być załadowany). Odczyt na
nieaktywnym komponencie po prostu zwraca pusty łańcuch — brak
wpisu nie powoduje wyjątkuFE FF). PDFium dekoduje
oba formaty, więc nie musisz zajmować się kodowaniem bezpośrednioAuthor jest puste, ale w oknie właściwości Acrobata widać
autora, szukaj wartości w pakiecie XMP (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;