property Bookmark[const Title: WString]: TBookmark; // read only
Konspekt PDF (nazywany też konspektem dokumentu lub „zakładkami” w przeglądarkach takich jak Acrobat) to hierarchiczne drzewo nazwanych wpisów, po których użytkownik nawiguje z panelu bocznego. Każdy wpis ma tytuł, opcjonalne miejsce docelowe lub akcję oraz zero lub więcej elementów potomnych. PDFium Delphi Component spłaszcza drzewo do sekwencji rekordów TBookmark, które zachowują bazowy uchwyt FPDF_BOOKMARK plus wstępnie rozstrzygnięty tytuł, docelowy numer strony, typ akcji i cel akcji
Indeksowana ciągiem forma Bookmark wykonuje rozróżniające wielkość liter przeszukiwanie całego drzewa konspektu (w głąb) i zwraca pierwszy pasujący węzeł. Zwrócony rekord ma Handle = nil i PageNumber = 0, gdy nie istnieje wpis o tym tytule — sprawdź Handle przed nawigacją
Użyj Bookmarks, aby wyliczyć każdy węzeł w kolejności dokumentu, BookmarkChildren, aby przejść jeden poziom zagnieżdżenia, oraz BookmarkFrom, aby przekonwertować surowy uchwyt (na przykład ze zdarzenia kliknięcia po stronie przeglądarki) z powrotem na wypełniony rekord
| Title | WString. Pełny tytuł zakładki do dopasowania. Porównanie rozróżnia wielkość liter i jest dokładne (bez dopasowywania podciągów ani symboli wieloznacznych). Białe znaki i interpunkcja w tytule muszą być odtworzone dokładnie tak, jak zapisano w konspekcie PDF |
Action w zwróconym rekordzie wskazuje, jak zakładka zachowuje się po aktywacji — acGoto przechodzi do ActionPageNumber wewnątrz dokumentu, acGotoRemote celuje w inny plik PDF, acUri otwiera URL, acLaunch uruchamia zewnętrzny plik, a acUnsupported oznacza, że PDFium nie potrafił zinterpretować miejsca docelowego0
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;