pdfCompareOutlines
Duplicate an outline node's attached action onto a new/other
int32_t __stdcall pdfCloneOutlineAction(PPDF IPDF, int32_t OutlineID);
int32_t __stdcall pdfCompareOutlines(PPDF IPDF, int32_t FirstOutlineID, int32_t SecondOutlineID);
int32_t __stdcall pdfGetOutlineObjectNumber(PPDF IPDF, int32_t OutlineID);
function pdfCloneOutlineAction(const IPDF: PPDF; OutlineID: Integer): Integer; stdcall;
function pdfCompareOutlines(const IPDF: PPDF; FirstOutlineID, SecondOutlineID: Integer): Integer; stdcall;
function pdfGetOutlineObjectNumber(const IPDF: PPDF; OutlineID: Integer): Integer; stdcall;
Purpose. Duplicate an outline node's attached action onto a new/other node (pdfCloneOutlineAction); compare two outline nodes structurally (pdfCompareOutlines); resolve an outline node's underlying PDF object number (pdfGetOutlineObjectNumber, useful for cross-referencing against low-level object-level APIs elsewhere in the ABI).
Parameters.
| Parameter | Description |
|---|---|
IPDF | Document handle. |
OutlineID / FirstOutlineID/SecondOutlineID | Bookmark handle(s). |
Return value. pdfCloneOutlineAction: the resulting handle/identifier on success; 0 if IPDF invalid or OutlineID unresolved. pdfCompareOutlines: a comparison result code (not independently re-verified as to exact semantics — e.g. equal/different/ordering — beyond confirming the call is real, not a stub); -1 if IPDF is invalid. pdfGetOutlineObjectNumber: the object number; 0 if IPDF invalid or OutlineID unresolved.
C# (P/Invoke)
public static extern int pdfCompareOutlines(IntPtr IPDF, int FirstOutlineID, int SecondOutlineID);
Core
pdfCompareOutlines
The …A form takes UTF-8, …W
takes UTF-16; a bare name aliases the ANSI form.
Worked examples — complete programs in ten languages.