LayerPDSEdit_Layer
ObjectPDSRoleMap

Each structure element must have a structure type. The definition of such types is application-specific. In addition, PDF 1.3 defines a standard set of structure types for logical structure in PDF documents. The role map (PDSRoleMap) maps application-specific element types to the standard element types that have a similar function. There is only one PDSRoleMap per document, associated with the PDSTreeRoot.



Typedef Summary
 Typedef
 PDSRoleMap
Represents mappings of structural element types present in a PDF document to standard element types having similar uses. There is one PDSClassMap per document, associated with the PDSTreeRoot.
Method Summary
 Method
 
void PDSRoleMapCopy(INPDSRoleMap srcRoleMap, INPDSTreeRoot dstTreeRoot, OUTPDSRoleMap* dstRoleMap)
Makes a copy of a PDSRoleMap, making it the PDSRoleMap of the specified StructTreeRoot.
 
ASBool PDSRoleMapDoesMap(INPDSRoleMap roleMap, INASAtom src, INASAtom dst)
Determines whether the specified PDSRoleMap provides any mapping path for two given element types.
 
ASAtom PDSRoleMapGetDirectMap(INPDSRoleMap roleMap, INASAtom type)
Gets the type, if any, directly mapped in the specified PDSRoleMap for the given element type.
 
void PDSRoleMapMap(INPDSRoleMap roleMap, INASAtom src, INASAtom dst)
Maps an element type (src) to another element type (dst) in the specified PDSRoleMap.
 
void PDSRoleMapUnMapDst(INPDSRoleMap roleMap, INASAtom dst)
Makes the specified element type have no mapping.
 
void PDSRoleMapUnMapSrc(INPDSRoleMap roleMap, INASAtom src, INASBool fixupOthers)
Makes the specified element type have no mapping.

Typedefs Detail
PDSRoleMap 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

typedef CosObj PDSRoleMap;

Represents mappings of structural element types present in a PDF document to standard element types having similar uses. There is one PDSClassMap per document, associated with the PDSTreeRoot.

Note

The write functions in the PDSEdit API are not available in Adobe Reader.

File: PDSExpT.h
Line: 138



Method Detail
PDSRoleMapCopy()
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

void PDSRoleMapCopy(INPDSRoleMap srcRoleMap, INPDSTreeRoot dstTreeRoot, OUTPDSRoleMap* dstRoleMap)

Makes a copy of a PDSRoleMap, making it the PDSRoleMap of the specified StructTreeRoot.

This may raise various exceptions.

Parameters

srcRoleMap — 

The PDSRoleMap to copy.

 
dstTreeRoot — 

The structure tree root in which to place srcRoleMap.

 
dstRoleMap — 

(Filled by the method) If not NULL, it points to the new, copied PDSRoleMap.

See Also

Since

PI_PDS_WRITE_VERSION >= 0x00040000

File: PDSWriteProcs.h
Line: 687
PDSRoleMapDoesMap() 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

ASBool PDSRoleMapDoesMap(INPDSRoleMap roleMap, INASAtom src, INASAtom dst)

Determines whether the specified PDSRoleMap provides any mapping path for two given element types.

Parameters

roleMap — 

IN/OUT The PDSRoleMap.

 
src — 

IN/OUT The ASAtom for an element type whose mapping is tested.

 
dst — 

IN/OUT The ASAtom for an element type. Note that this may be a standard element type.

Returns

true if an mapping path was found, false otherwise.

See Also

Exceptions

pdsErrBadPDF is raised if an error is found in the PDF file.

Since

PI_PDS_READ_VERSION >= 0x00040000

File: PDSReadProcs.h
Line: 586
PDSRoleMapGetDirectMap() 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

ASAtom PDSRoleMapGetDirectMap(INPDSRoleMap roleMap, INASAtom type)

Gets the type, if any, directly mapped in the specified PDSRoleMap for the given element type.

Parameters

roleMap — 

The PDSRoleMap.

 
type — 

The ASAtom for an element type whose mapping is found.

Returns

The ASAtom for the equivalent type specified in roleMap, or ASAtomNull if type has no mapping in roleMap.

See Also

Exceptions

pdsErrBadPDF is raised if an error is found in the PDF file.

Since

PI_PDS_READ_VERSION >= 0x00040000

File: PDSReadProcs.h
Line: 568
PDSRoleMapMap() 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

void PDSRoleMapMap(INPDSRoleMap roleMap, INASAtom src, INASAtom dst)

Maps an element type (src) to another element type (dst) in the specified PDSRoleMap.

Parameters

roleMap — 

The PDSRoleMap in which to create a new mapping.

 
src — 

The element type to map to dst.

 
dst — 

The element type that src maps onto. Note that this may be a standard element type, such as P.

See Also

Exceptions

ErrSysPDSEdit is raised if src is already mapped.

Since

PI_PDS_WRITE_VERSION >= 0x00040000

File: PDSWriteProcs.h
Line: 643
PDSRoleMapUnMapDst() 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

void PDSRoleMapUnMapDst(INPDSRoleMap roleMap, INASAtom dst)

Makes the specified element type have no mapping.

Parameters

roleMap — 

The PDSRoleMap in which to un-map all element types that map onto the dst element type.

 
dst — 

The element type to which all mappings are removed. All element types that map to the dst element type are unmapped.

See Also

Exceptions

pdsErrWrongTypeParameter

Since

PI_PDS_WRITE_VERSION >= 0x00040000

File: PDSWriteProcs.h
Line: 671
PDSRoleMapUnMapSrc() 
Product availability: PDFL
Platform availability: Macintosh, Windows, UNIX

Syntax

void PDSRoleMapUnMapSrc(INPDSRoleMap roleMap, INASAtom src, INASBool fixupOthers)

Makes the specified element type have no mapping.

This may raise various exceptions.

Parameters

roleMap — 

IN/OUT The PDSRoleMap in which to un-map the src element type.

 
src — 

IN/OUT The element type whose mapping is removed.

 
fixupOthers — 

IN/OUT If true, any element type that was directly mapped to src is mapped to whatever src previously mapped to. If false, PDSRoleMapUnMapSrc() only un-maps src.

See Also

Since

PI_PDS_WRITE_VERSION >= 0x00040000

File: PDSWriteProcs.h
Line: 659