PDFium Delphi Component Docs

Bookmark propriedade

Componente: TPdf  ·  Unidade: PDFium
Localiza um bookmark pela sua string de título e retorna o registro TBookmark correspondente da árvore de outline do documento definida na seção 12.3.3 do PDF

Syntax

property Bookmark[const Title: WString]: TBookmark; // read only

Description

O outline do PDF (também chamado de outline do documento ou de "bookmarks" em visualizadores como o Acrobat) é uma árvore hierárquica de entradas nomeadas pela qual o usuário navega no painel lateral. Cada entrada tem um título, um destino ou ação opcional e zero ou mais filhos. O PDFium Delphi Component achata a árvore em uma sequência de records TBookmark que retêm o handle FPDF_BOOKMARK subjacente, além do título, número da página de destino, tipo de ação e destino da ação pré-resolvidos.

A forma Bookmark indexada por string executa uma busca que diferencia maiúsculas de minúsculas em toda a árvore de outline (em profundidade) e retorna o primeiro nó correspondente. O record retornado tem Handle = nil e PageNumber = 0 quando não existe entrada com esse título — verifique Handle antes de navegar.

Use Bookmarks para enumerar todos os nós na ordem do documento, BookmarkChildren para percorrer um nível de aninhamento e BookmarkFrom para converter um handle bruto (por exemplo, de um evento de clique no visualizador) de volta em um record populado.

Parameters

TitleWString. O título completo do bookmark a corresponder. A comparação diferencia maiúsculas de minúsculas e é exata (sem correspondência por substring ou curinga). Espaços em branco e pontuação no título devem ser reproduzidos exatamente como armazenados no outline do PDF.

Remarks

Example

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;

See Also

Bookmarks, BookmarkChildren, BookmarkFrom, HasBookmarkChildren, PageNumber