property Bookmark[const Title: WString]: TBookmark; // read only
De PDF-outline (ook documentoutline of "bookmarks" genoemd in viewers als Acrobat) is een hiërarchische boom van benoemde items waarmee de gebruiker vanuit het zijpaneel navigeert. Elk item heeft een titel, een optionele bestemming of actie, en nul of meer kinderen. PDFium Delphi Component vlakt de boom af tot een reeks TBookmark-records die de onderliggende FPDF_BOOKMARK-handle bewaren, samen met vooraf opgeloste titel, doelpaginanummer, actietype en actiedoel
De op tekenreeks geïndexeerde Bookmark-vorm doorzoekt de gehele outlineboom (depth-first) case-sensitive en geeft de eerste overeenkomende knoop terug. Het teruggegeven record heeft Handle = nil en PageNumber = 0 wanneer er geen item met die titel bestaat — controleer Handle voordat u navigeert
Gebruik Bookmarks om elke knoop in documentvolgorde op te sommen, BookmarkChildren om één nestingsniveau te doorlopen, en BookmarkFrom om een ruwe handle (bijvoorbeeld uit een klikgebeurtenis aan de viewerkant) terug te converteren naar een gevuld record
| Title | WString. De volledige bladwijzertitel die moet overeenkomen. De vergelijking is case-sensitive en exact (geen subtekenreeks- of wildcard-matching). Witruimte en leestekens in de titel moeten exact worden overgenomen zoals ze in de PDF-outline staan |
Action op het teruggegeven record geeft aan hoe de bladwijzer zich gedraagt bij activering — acGoto springt naar ActionPageNumber binnen het document, acGotoRemote mikt op een ander PDF-bestand, acUri opent een URL, acLaunch start een extern bestand, en acUnsupported betekent dat PDFium de bestemming niet kon interpreteren0
var
Bm: TBookmark;
begin
Pdf1.LoadFromFile('specification.pdf');
Bm := Pdf1.Bookmark['Chapter 5: Annotations'];
if Bm.Handle <> nil then
begin
case Bm.Action of
acGoto: Pdf1.PageNumber := Bm.ActionPageNumber;
acUri: ShowMessage('URL bookmark');
acGotoRemote: ShowMessage('External PDF target');
end;
end
else
ShowMessage('No bookmark with that title.');
end;