property DestinationCount: Integer; // read only
DestinationCount は文書に登録された名前付き宛先の数を報告します。すなわちカタログの /Dests 辞書またはその /Names /Dests ネームツリー(PDF 1.7 仕様 12.3.2.3 節)から到達可能なエントリです。名前付き宛先は文字列ラベルを対象ページ、ビューポート矩形、オプションのズーム係数へ束縛します。ブックマーク、リンク注釈、リモート goto アクションはインラインまたは名前で宛先を参照します
Active が False のときや名前付き宛先が宣言されていないとき、値は 0 です(リンクとブックマークはインラインの明示的宛先経由で依然として動作する可能性があります。「名前付き」の種類のみこのカウントに参加します)。0 から DestinationCount - 1 までのインデックスで Destination[Index] を使い、TDestination レコード(ハンドル、名前、ページ番号、X/Y/Zoom、およびどのフィールドが明示的に格納されているかを示す has-フラグ)を取得します
PDFium が毎回ネームツリーを走査するため、アクセスごとのコストは O(n) です。名前による繰り返しルックアップには手動ループより DestinationByName[Name] を優先してください。PDFium は内部でバランスツリー検索を行い、線形走査よりスケールします
Bookmarks プロパティーがより直接的です。名前付き宛先は主に他の PDF からのリモート参照を処理するときに意味があります
var I: Integer;
var D: TDestination;
for I := 0 to Pdf1.DestinationCount - 1 do
begin
D := Pdf1.Destination[I];
Memo1.Lines.Add(Format('%s → page %d', [D.Name, D.PageNumber]));
end;