function GetLinkedAnnotationChain(AnnotIndex: Integer; Relationship: TPdfAnnotationRelationship; MaxDepth: Integer = 64): TPdfIntegerArray;
| AnnotIndex | Integer. A kiinduló jegyzet nulla alapú indexe az aktuális oldalon, a 0 .. AnnotationCount - 1 tartományban |
| Relationship | TPdfAnnotationRelationship. A parPopup a /Popup bejegyzéseket követi; a parInReplyTo a /IRT válaszbejegyzéseket |
| MaxDepth | Integer. A követendő hivatkozások legnagyobb száma. 1 és 4096 között kell lennie, egyébként EPdfError kivétel váltódik ki. Az alapértelmezés 64 |
| Result | TPdfIntegerArray. Az összekapcsolt jegyzetek oldalindexei bejárási sorrendben. Üres, ha a kiinduló jegyzethez nem kapcsolódik ilyen hivatkozás |
Ismételten alkalmazza a GetLinkedAnnotationIndex metódust: a kiinduló jegyzettől a kért kapcsolat mentén eljut a következő jegyzetig, onnan tovább, útközben minden indexet összegyűjtve. Az eredmény egy vita válaszlánca vagy egy popup-lánc, egyszerű oldaljegyzet-index tömbként
A bejárás három feltétel esetén áll le: az aktuális jegyzethez nincs további hivatkozás, a meglátogatott hivatkozások száma eléri a MaxDepth értéket, vagy a következő index egy már látott jegyzetre mutatna (a kiinduló index látottnak számít). A ciklusőr miatt a hívás biztonságos olyan hibás dokumentumokon is, amelyeknek /IRT bejegyzégei köröznek
A kiinduló index maga soha nem része az eredménynek — csak azok a jegyzetek, amelyekhez elvezet. A kért hivatkozással nem rendelkező jegyzet üres tömböt ad, nem hibát
1 .. 4096 tartományon kívüli MaxDepth még bármely jegyzet megnyitása előtt EPdfError kivételt vált ki
var
Chain: TPdfIntegerArray;
Index: Integer;
begin
// collect the whole reply thread under annotation 5
Chain := Pdf1.GetLinkedAnnotationChain(5, parInReplyTo);
for Index in Chain do
Memo1.Lines.Add(Pdf1.Annotation[Index].ContentsText);
end;