API referenceCore SDK

pdfCreate3DGotoViewAction

Create a /GoTo3DView action jumping to a specific view on

C
int32_t __stdcall pdfCreate3DGotoViewAction(PPDF IPDF, uint32_t Base3DAnnot, void* IView, int32_t Named);
Delphi
function pdfCreate3DGotoViewAction(const IPDF: PPDF; Base3DAnnot: Cardinal; const IView: Pointer; Named: Integer): Integer; stdcall;

Purpose. Create a /GoTo3DView action jumping to a specific view on a 3D annotation — e.g. attached to a bookmark, link, or button to switch camera views on click.

Description. Decodes IView to (regIdx, viewIdx) and binds the target view (viewIdx) to Base3DAnnot in the action — per an inline source comment, "the view index is bound to the target 3D annotation (by its NM) in the action," i.e. the annotation identity is carried by name reference in the emitted action, not by the decoded regIdx (which is used only internally to validate/locate the view during this call). Named is accepted by the ABI but never passed through to Create3DGotoViewActionH — whatever behavior it would select (e.g. referencing the view by its /IN name string vs. an indirect object reference) has no effect regardless of value.

Parameters.

ParameterDescription
IPDFDocument handle.
Base3DAnnotThe target 3D annotation's handle.
IViewAn opaque view handle from pdfCreate3DView, decoded to validate/locate the view.
NamedAccepted but silently dropped — has no effect.

Return value. The new action's handle; 0 if IView is nil or doesn't decode to a valid view, or IPDF is invalid.

C# (P/Invoke)

wrappers/dotnet/LumasPdf.cs
public static extern int pdfCreate3DGotoViewAction(IntPtr IPDF, uint Base3DAnnot, IntPtr IView, int Named);
Area
Core SDK
Category

Object Creation

Exported names

pdfCreate3DGotoViewAction

String variants

The …A form takes UTF-8, …W takes UTF-16; a bare name aliases the ANSI form.

See working code

Worked examples — complete programs in ten languages.