PDF SDK Documentation

Comprehensive Guide for Developers: Features, Integration, and API Reference

Loading...
Searching...
No Matches
optional_content.h File Reference

Optional Content API. More...

#include <pdfsdk/core/api_macro.h>
#include <pdfsdk/core/atoms.h>
#include <pdfsdk/errors.h>
#include <pdfsdk/math_types.h>

Go to the source code of this file.

Typedefs

typedef struct PDOCGRec_ * PDOCG
 
typedef struct PDOCConfigRec_ * PDOCConfig
 
typedef struct PDOCOrderNodeRec_ * PDOCOrderNode
 
typedef struct PDOCMDRec_ * PDOCMD
 
typedef void(PDFSDK_CALLCONV * PDOCConfigChangedProc) (void *clientData)
 

Enumerations

enum  PDOCOrderNodeType { kPDOCOrderNodeArray , kPDOCOrderNodeLabel , kPDOCOrderNodeOCG }
 
enum  PDOCGStateOperation { kPDOCGStateOperationOff , kPDOCGStateOperationOn , kPDOCGStateOperationToggle }
 

Functions

PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocAttachOCConfigChangedCallback (PDDoc doc, PDOCConfigChangedProc proc, void *clientData)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocDetachOCConfigChangedCallback (PDDoc doc, PDOCConfigChangedProc proc, void *clientData)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocNotifyOCConfigChanged (PDDoc doc)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocCreateOCG (PDDoc doc, const wchar_t *name, size_t nameSize, PDOCG *pOCG)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocGetNumOCGs (PDDoc doc, size_t *pNumOCGs)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocGetOCG (PDDoc doc, size_t index, PDOCG *pOCG)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCGSetName (PDOCG ocg, const wchar_t *name, size_t nameSize)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCGGetName (PDOCG ocg, wchar_t *buffer, size_t bufSize, size_t *pSize)
 
PDF_CORE_API bool PDFSDK_CALLCONV PDOCGIsEqual (PDOCG ocg_A, PDOCG ocg_B)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDDocGetOCConfig (PDDoc doc, PDOCConfig *pConfig)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCConfigGetOrder (PDOCConfig config, PDOCOrderNode *pOrder)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCConfigSetOCGState (PDOCConfig config, PDOCG ocg, bool state, bool preserveRB)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCConfigGetOCGState (PDOCConfig config, PDOCG ocg, bool *pState)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeGetType (PDOCOrderNode node, PDOCOrderNodeType *pType)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayCreate (PDDoc doc, PDOCOrderNode *pNode)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayGetNumChildren (PDOCOrderNode node, size_t *pNumChildren)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayGetChild (PDOCOrderNode node, size_t index, PDOCOrderNode *pChild)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayInsertChild (PDOCOrderNode node, size_t index, PDOCOrderNode child)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayAppendChild (PDOCOrderNode node, PDOCOrderNode child)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeArrayRemoveChild (PDOCOrderNode node, size_t index)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeLabelCreate (PDDoc doc, const wchar_t *text, PDOCOrderNode *pNode)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeLabelSetText (PDOCOrderNode node, const wchar_t *text, size_t textSize)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeLabelGetText (PDOCOrderNode node, wchar_t *buffer, size_t bufSize, size_t *pSize)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeOCGCreate (PDOCG ocg, PDOCOrderNode *pNode)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeOCGSetOCG (PDOCOrderNode node, PDOCG ocg)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCOrderNodeOCGGetOCG (PDOCOrderNode node, PDOCG *pOCG)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCMDCreateFromOCG (PDOCG ocg, PDOCMD *pOCMD)
 
PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCMDIsVisible (PDOCMD ocmd, PDOCConfig config, bool *pVisible)
 

Detailed Description

Optional Content API.

Typedef Documentation

◆ PDOCConfig

typedef struct PDOCConfigRec_* PDOCConfig

A PDOCConfig represents a set of states and other information from a OCProperties dictionary.

There is a document default configuration, saved in the /D entry in the OCProperties dictionary, and a list of other client configurations, saved as an array of configurations in the /Configs entry in the OCProperties dictionary.

Layers are generally displayed as Optional Content Groups.

See 8.11.4 Configuring Optional Content in PDF32000_2008.pdf

See also
PDOCConfigGetOrder
PDOCConfigSetOCGState
PDOCConfigGetOCGState

◆ PDOCOrderNode

typedef struct PDOCOrderNodeRec_* PDOCOrderNode

Representation of the Order entry in the Configuration Dictionaries.

See 8.11.4.3 Optional Content Configuration Dictionaries.

An array specifying the order for presentation of optional content groups in a conforming reader’s user interface.

Function Documentation

◆ PDOCConfigGetOrder()

PDF_CORE_API PDErrCode PDFSDK_CALLCONV PDOCConfigGetOrder ( PDOCConfig config,
PDOCOrderNode * pOrder )

Gets the user interface display order of optional-content groups (OCGs) in an optional-content configuration.

Parameters
configThe configuration for which an OCG display order is desired.
[out]pOrderA pointer to the PDOCOrderNode object containing the OCG order array.