PDFium Delphi Component Docs

BookmarkFrom Özellik

Component: TPdf  ·  Unit: PDFium
Ham bir FPDF_BOOKMARK tanıtıcısını, o ana hat düğümünün başlığını, hedef sayfasını ve eylem meta verisini okuyarak tam doldurulmuş bir TBookmark kaydına dönüştürür

Syntax

property BookmarkFrom[Handle: FPDF_BOOKMARK]: TBookmark; // read only

Description

BookmarkFrom, alt düzey PDFium bookmark gezinmesi ile üst düzey TBookmark kaydı arasındaki köprüdür. Doğrudan PDFium'dan bir FPDF_BOOKMARK tanıtıcısı elde ettiğinizde (örneğin FPDFBookmark_GetFirstChild, FPDFBookmark_GetNextSibling ile veya bir görüntüleyicide tıklama hit-test'inin parçası olarak), çözülmüş başlık metnini, hedef PageNumber'ı, TPdfAction türünü ve varsa ilişkili URI / dosya yolunu almak için bu indeksleyiciden geçirin

Döndürülen kayıt bir anlık görüntüdür: bookmark dictionary'sini bir kez okur ve hedefi 1 tabanlı sayfa numarasına çözer. Tanıtıcının kendisi de kayıtta saklanır; böylece yeniden ağaç taraması yapmadan PDFium API'lerine geri geçirebilirsiniz

This indexer is the canonical way to implement a custom outline traversal that needs more control than Bookmarks (which enumerates everything depth-first) or BookmarkChildren (which only returns direct children). Mix raw PDFium handles with BookmarkFrom resolution to build, for instance, a lazy-load tree view.

Parameters

HandleFPDF_BOOKMARK. PDFium C API'sinden veya önceki bir TBookmark.Handle alanından alınan nil olmayan bookmark tanıtıcısı. nil geçirmek sıfırla dolu bir kayıt döndürür. Tanıtıcı yalnızca altta yatan doküman yüklüyken geçerlidir

Remarks

Example

procedure TForm1.DumpOutline(const Bm: TBookmark; Depth: Integer);
var
  Child: FPDF_BOOKMARK;
  Sub: TBookmark;
begin
  Memo1.Lines.Add(StringOfChar(' ', Depth * 2) + Bm.Title +
    Format(' -> page %d', [Bm.ActionPageNumber]));
  Child := FPDFBookmark_GetFirstChild(Pdf1.Document, Bm.Handle);
  while Child <> nil do
  begin
    Sub := Pdf1.BookmarkFrom[Child];
    DumpOutline(Sub, Depth + 1);
    Child := FPDFBookmark_GetNextSibling(Pdf1.Document, Child);
  end;
end;

See Also

Bookmark, Bookmarks, BookmarkChildren, HasBookmarkChildren