PDFium Delphi Component Docs

GetAnnotationDictionaryValue metoda

Komponenta: TPdf  ·  Jedinica: PDFium
Čita jedan ključ izravno iz rječnika anotacije na trenutačnoj stranici i izvještava o vrsti vrijednosti zajedno s dekodiranim skalarom

Sintaksa

function GetAnnotationDictionaryValue(AnnotIndex: Integer; const Key: WString): TPdfDictionaryValue;

AnnotIndexInteger. Indeks anotacije na trenutačnoj stranici od nule, u rasponu 0 .. AnnotationCount - 1. Indeks izvan raspona podiže EPdfError
KeyWString. Naziv unosa rječnika koji treba pročitati, kodiran u UTF-8 prije nativnog poziva
ResultTPdfDictionaryValue. Kind nosi nativnu vrstu vrijednosti; vrijednosti stringova, naziva i brojeva dekodiraju se u StringValue / NumberValue s HasScalarValue = True

Opis

Svaka anotacija počiva na PDF rječniku, a zapisni model komponente preslikava samo uobičajene unose. Ovaj poziv ulazi u sirovi rječnik i čita jedan ključ, pa unosi definirani aplikacijom (status recenzije, id grupiranja, ekstenzija proizvođača) postaju vidljivi bez obilaska grafa objekata

Vrsta vrijednosti ispituje se nativno i dekodira u TPdfDictionaryValueKind: pdvkUnknown, pdvkBoolean, pdvkNumber, pdvkString, pdvkName, pdvkArray, pdvkDictionary, pdvkStream, pdvkNull ili pdvkReference. Dohvaćaju se samo skalarni tipovi: stringovi i nazivi dekodiraju se u StringValue, brojevi u NumberValue (koje nativni API čita jednostrukom preciznošću), a HasScalarValue označava uspješan dohvat. Vrijednosti bez skalarnog tereta — booleani, polja, ugniježđeni rječnici, tokovi — izvještavaju se samo kroz Kind

Za ključeve koje zapisni model već izlaže, dajte prednost Annotation: ona normalizira i provjerava uobičajena polja. Ovaj poziv koristite samo kada se ključ nalazi izvan modela

Napomene

Primjer

var
  Value: TPdfDictionaryValue;
begin
  // read a vendor-specific review status from annotation 2
  Value := Pdf1.GetAnnotationDictionaryValue(2, 'ReviewStatus');
  if (Value.Kind = pdvkName) and Value.HasScalarValue then
    Memo1.Lines.Add('Status: ' + Value.StringValue);
end;

Vidi također

Annotation, AnnotationCount, GetAttachmentDictionaryValue