Layer

PDF Edit Layer

37 components448 items
369 Functions 9 Definitions 8 Typedefs 40 Structures 22 Enums

Dump

5 items

Functions(3)

PDEAttrEnumTable

void PDEAttrEnumTable(IN PDEAttrEnumProc enumProc, IN void *clientData)
PERProcs.h:1304

Enumerates the table of attributes. This method enumerates the shared resource objects. It is useful when looking for orphaned attributes.

Parameters
enumProc: IN PDEAttrEnumProc

IN/OUT A callback to call for each attribute.

clientData: IN void *

IN/OUT A pointer to user-supplied data to pass to enumProc each time it is called.

Returns
void

PDELogDump

void PDELogDump(IN PDEObjectDumpProc proc, IN void *clientData)
PERProcs.h:1291

Enumerates the PDEObject objects. This is useful when looking for orphaned objects.

Parameters
proc: IN PDEObjectDumpProc

A callback to call once for each PDEObject.

clientData: IN void *

A pointer to user-supplied data to pass to proc each time it is called.

Returns
void
See Also

PDEObjectDump

void PDEObjectDump(IN PDEObject obj, IN ASInt32 levels, IN PDEObjectDumpProc proc, IN void *clientData)
PERProcs.h:1276

The object, its children and attributes are dumped. The dump contains information about each individual object. The output for child elements is indented with respect to their parents. The information for each object is char* - the string describing Object Type. (See PDEObjectGetType()). The number representing Object Type. (See PEExpT.h : PDEType enum ). The object reference count. The memory location for the object.

Parameters
obj: IN PDEObject

The PDEObject to dump.

levels: IN ASInt32

The depth of children to dump.

proc: IN PDEObjectDumpProc

A callback with the dump information; it may be called more than once per object.

clientData: IN void *

Provided by the caller as the parameter of the same name for proc .

Returns
void
See Also

Typedefs(2)

General

22 items

Functions(5)

PDEDefaultGState

void PDEDefaultGState(OUT PDEGraphicStateP stateP, IN ASInt32 stateSize)
PERProcs.h:1471

Fills out a PDEGraphicStateP structure with the default graphic state. Non-NULL objects in the graphic state, such as the fill and stroke color spaces, have their reference counts incremented by this method. Be sure to release these non- NULL objects when disposing of stateP .

Parameters
stateP: OUT PDEGraphicStateP

(Filled by the method) A pointer to a PDEGraphicState structure with the default graphic state.

stateSize: IN ASInt32

The size of the stateP structure in bytes.

Returns
void

PDEDefaultGStateEx

void PDEDefaultGStateEx(OUT PDEGraphicStateExP stateP, IN ASInt32 stateSize)
PERProcs.h:3327

Fills out a PDEGraphicStateEx structure which is higher precision alternative of PDEGraphicState structure with the default graphic state. Non-NULL objects in the graphic state, such as the fill and stroke color spaces, have their reference counts incremented by this method. Be sure to release these non- NULL objects when disposing of stateP .

Parameters
stateP: OUT PDEGraphicStateExP

(Filled by the method) A pointer to a PDEGraphicStateEx structure with the default graphic state.

stateSize: IN ASInt32

The size of the stateP structure in bytes.

Returns
void

PDEMergeResourcesDict

void PDEMergeResourcesDict(OUT CosObj *resDictP, IN CosDoc cosDoc, IN const CosObj *newResP)
PEWProcs.h:1072

Merges two Resources dictionaries in the same CosDoc; you cannot merge two resource dictionaries from different CosDocs. Both dictionaries and what they reference must be in cosDoc . The objects referenced by newResP are appended to resDictP . This method only operates on the Cos dictionaries. It assumes there are no resource name conflicts. This method was useful for adding form resources to page resource dictionaries, but that is no longer necessary. Since PDFEdit resolves resource names across PDEContent objects, this routine is safe for using with PDFEdit methods. This method may be unsafe if you modify streams and dictionaries outside of the PDFEdit API.

Parameters
resDictP: OUT CosObj *

IN/OUT (Filled by the method) The dictionary to which newResP is merged. When the method completes, resDictP is the merged dictionary result.

cosDoc: IN CosDoc

IN/OUT The CosDoc containing both dictionaries.

newResP: IN const CosObj *

IN/OUT The dictionary to merge with resDictP .

Returns
void

PDEPurgeCache

PEWProcs.h:1312

Clears the PDE Cache of this PDDoc. This method is only of interest to clients. It is not recommended that you call this method directly; it is provided only for backwards compatibility.

Parameters
doc: IN PDDoc

A PDDoc whose cache is purged.

Returns
void

PDEScratchDocCleanup

PEWProcs.h:3085

Removes unused objects from the PDFEdit scratch document, which is used to hold representations of PDFEdit resources associated with a specific document.

Parameters
: void
Returns
void

Typedefs(1)

Structures(6)

PDEDoc

typedef struct _t_PDEDoc* PDEDoc
PEExpT.h:403

A reference to a PDEDoc.

PDEPage

typedef struct _t_PDEPage* PDEPage
PEExpT.h:407

A reference to a PDEPage.

PDEReader

typedef struct _t_PDEReader* PDEReader
PEExpT.h:387

An object used to read streams of PDEElement objects from page contents.

PDEState

typedef struct _t_PDEState* PDEState
PEExpT.h:362

A reference to the state of a reader.

PDEWriter

typedef struct _t_PDEWriter* PDEWriter
PEExpT.h:391

An object used to write streams of PDEElement objects to page content.

Enums(3)

PDEEnumElementsFlags

PEExpT.h:1682

A bit field for the PDEEnumElements() method.

Values
kPDEContentIgnoreMarkedContent
—

Indicates whether Marked Content is ignored in the enumeration. This may be useful when generating elements purely for display purposes.

kPDEContentParsingAForm
—
See Also

PDEGraphicStateWasSetFlags

PEExpT.h:622

A structure describing the graphics state that was set.

Values
kPDEFillCSpaceWasSet
—

A fill color space was set corresponding to the cs ( setcolorspace ) operator.

kPDEFillCValueWasSet
—

A color fill value was set corresponding to the sc ( setcolor ) operator.

kPDEStrokeCSpaceWasSet
—

A color space stroke value was set corresponding to the CS ( setcolorspace ) operator.

kPDEStrokeCValueWasSet
—

A color stroke value was set corresponding to the SC ( setcolor ) operator.

kPDEDashWasSet
—

A dash specification was set corresponding to the d ( setdash ) operator.

kPDELineWidthWasSet
—

The line width was set corresponding to the w ( setlinewidth ) operator.

kPDEMiterLimitWasSet
—

The miter limit was set corresponding to the M ( setmiterlimit ) operator.

kPDEFlatnessWasSet
—

Line flatness was set corresponding to the i ( setflat ) operator.

kPDELineCapWasSet
—

Line cap style was set corresponding to the J ( setlinecap ) operator.

kPDELineJoinWasSet
—

Line join style was set corresponding to the j ( setlinejoin ) operator.

kPDERenderIntentWasSet
—

A color rendering intent was set corresponding to the Intent key in the image dictionary.

kPDEExtGStateWasSet
—

An extended graphics state was set corresponding to the gs operator.

kPDESoftMaskMatrixWasSet
—

The soft mask matrix has been set

kPDEStateWasSetByPDEParse
—

PDEType

PEExpT.h:1485

The types of PDEObject, which is the superclass for PDEContent, PDEElement, PDEClip, and so on.

Values
kPDEContent
—

PDEContent object

kPDEText
—

PDEText object

kPDEPath
—

PDEPath object

kPDEImage
—

PDEImage object

kPDEForm
—

PDEForm object

kPDEPS
—

PDEPS object

kPDEXObject
—

PDEXObject object

kPDEClip
—

PDEClip object

kPDEFont
—

PDEFont object

kPDEColorSpace
—

PDEColorSpace object

kPDEExtGState
—

PDEExtGState object

kPDEPlace
—

PDEPlace object

kPDEContainer
—

PDEContainer object

kPDSysFont
—

PDSysFont object

kPDEPattern
—

PDEPattern object

kPDEDeviceNColors
—

PDEDeviceNColors object

kPDEShading
—

PDEShading object

kPDEGroup
—

PDEGroup object

kPDEUnknown
—

PDEUnknown object

kPDEBeginContainer
—

PDEBeginContainer object

kPDEEndContainer
—

PDEEndContainer object

kPDEBeginGroup
—

PDEBeginGroup object

kPDEEndGroup
—

PDEEndGroup object

kPDEXGroup
—

PDEXGroup object

kPDESoftMask
—

PDESoftMask object

kPDSysEncoding
—

PDSysEncoding object

kPDEDoc
—

PDEDoc object

kPDEPage
—

PDEPage object

kPDEReader
—

PDEReader object

kPDEWriter
—

PDEWriter object

kPDETextItem
—

PDETextItem object

kPDEImageFlate
—

PDEImageFlate object

kPDEImageJPX
—

PDEImageJPX object

kJPXColorSpace
—

JPXColorSpace object

kJPXPalette
—

JPXPalette object

kPDEGraphicFont
—
kPDELastType
—

Definitions(7)

IN

PEExpT.h:73

PEX1

PEExpT.h:49
Value:ACEX1

PEX2

PEExpT.h:50
Value:ACEX2

JPXColorSpace

6 items

Functions(4)

Structures(1)

Enums(1)

JPXColorSpaceType

PEExpT.h:2409

JPX Color Space types.

Values
kJPXCSUnknown
—
kJPXCSEnumerated
—
kJPXCSRestrictedICC
—
kJPXCSAnyICC
—
kJPXCSVenderColor
—

JPXPalette

5 items

Functions(4)

JPXPaletteGetTable

ASStm JPXPaletteGetTable(IN JPXPalette jpxPalette, OUT ASInt32 *paletteLength)
PERProcs.h:2900

Returns the palette data as a read only non-seekable ASStm. The returned ASStm should be read with ASStmRead(). Each component entry in the palette is represented by the number of bytes needed to contain the bit depth for that component.

Parameters
jpxPalette: IN JPXPalette
paletteLength: OUT ASInt32 *
Returns

Structures(1)

PDEBeginContainer

6 items

Functions(5)

PDEBeginContainerCreate

PEWProcs.h:1653

Creates a new PDEBeginContainer object. Call PDERelease to dispose of the returned PDEBeginContainer object when finished with it. Call PDERelease() to dispose of the returned PDEBeginContainer object when finished with it.

Parameters
mcTag: IN ASAtom

IN/OUT The tag name for the marked-content sequence.

cosObjP: IN CosObj *

IN/OUT (May be NULL ) A CosDict object containing the property list for the sequence.

isInline: IN ASBool

If true , it emits the container's dictionary into the content stream inline. If false , then the dictionary is emitted outside of the content stream and referenced by name. See the Property Lists section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 14.6.2, page 554. This document is provided on the web site of the International Standards Organization (ISO).

Returns
PDEBeginContainer

The newly created object.

PDEBeginContainerSetDict

void PDEBeginContainerSetDict(IN PDEBeginContainer pdeBeginContainer, IN CosObj *pdeBeginContainerDictP, IN ASBool isInline)
PEWProcs.h:1691

Sets the property list for a PDEBeginContainer. The property list is passed as a Cos dictionary that can be emitted inline or referenced from the \\Properties key in the \\Resources dictionary of the containing stream. To learn about Property Lists for isInline, see the ISO 32000-:2008 document (1.7). This document is provided on the web site of the International Standards Organization (ISO). @note If cosObjP is NULL, the property list is cleared.

Parameters
pdeBeginContainer: IN PDEBeginContainer
pdeBeginContainerDictP: IN CosObj *
isInline: IN ASBool

If true , it emits the container's dictionary into the content stream inline. If false , then the dictionary is emitted outside of the content stream and referenced by name. See the Property Lists section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 14.6.2, page 554.

Returns
void

Structures(1)

PDEBeginGroup

2 items

Functions(1)

Structures(1)

PDEClip

9 items

Functions(7)

PDEClipAddElem

void PDEClipAddElem(IN PDEClip clip, IN ASInt32 addAfterIndex, IN PDEElement pdeElement)
PEWProcs.h:656

Adds an element to a clip path. This method increments the reference count of pdeElement .

Parameters
clip: IN PDEClip

IN/OUT The clip path to which an element is added.

addAfterIndex: IN ASInt32

IN/OUT The index after which to add pdeElement . Use kPDEBeforeFirst to insert an element at the beginning of the clip object.

pdeElement: IN PDEElement

IN/OUT The element added, which may be a PDEPath, a PDEText, a PDEContainer, a PDEGroup, or a PDEPlace object.

Returns
void

PDEClipCopy

PEWProcs.h:1555

Makes a deep copy of a PDEClip object. Call PDERelease() to dispose of the returned clip object when finished with it. It raises an exception if it is unable to allocate memory.

Parameters
srcClip: IN PDEClip

IN/OUT The clipping path to copy.

Returns
PDEClip

The deep copy of srcClip .

PDEClipCreate

PEWProcs.h:689

Creates an empty clip object. This represents a clipping object that has no effect on elements that refer to it. Call PDERelease() to dispose of the returned clip object when finished with it. It raises an exception if it is unable to allocate memory.

Parameters
: void
Returns
PDEClip

The newly created clip object.

PDEClipFlattenedEnumElems

ASBool PDEClipFlattenedEnumElems(IN PDEClip clip, IN PDEClipEnumProc enumProc, IN void *enumProcClientData)
PERProcs.h:1658

For a given PDEClip, this enumerates all of the PDEElement objects in a flattened manner. In other words, PDEContainer objects and PDEGroup objects nested in the PDEClip will not be handed back, but any PDEPath objects and PDEText objects nested in them will be. Additionally, PDEPlace objects inside the PDEClip are not returned.

Parameters
clip: IN PDEClip

The PDEClip to enumerate.

enumProc: IN PDEClipEnumProc

Called with each flattened element. Enumeration continues until all elements have been enumerated, or until enumProc returns false .

enumProcClientData: IN void *

A pointer to user-supplied data to pass to enumProc each time it is called.

Returns
ASBool

Returns the value of enumProc . It returns true if successful, false otherwise.

PDEClipGetElem

PERProcs.h:962

Gets an element from a clip object. This method does not change the reference count of the returned PDEElement.

Parameters
clip: IN PDEClip

IN/OUT The clip object from which an element is obtained.

index: IN ASInt32

IN/OUT The index of the element to get from clip .

Returns
PDEElement

The element from the clip object.

PDEClipGetNumElems

PERProcs.h:945

Gets the number of top-level elements in a clip object. Top-level elements may be a path or charpath, a marked content container or place, or a group. Paths are represented as PDEPath objects; charpaths are represented as PDEText objects. PDEGroup is not a persistent object. You cannot save to PDF and re-get group objects.

Parameters
clip: IN PDEClip

IN/OUT The clip object to examine.

Returns
ASInt32

The number of path and charpath elements in clip. If clip contains PDEGroup objects, this method returns the top-level PDEPath, PDEText, PDEContainer, PDEGroup, or PDEPlace object. Use PDEClipFlattenedEnumElems() to see only the PDEPath and PDEText objects.

PDEClipRemoveElems

void PDEClipRemoveElems(IN PDEClip clip, IN ASInt32 index, IN ASInt32 count)
PEWProcs.h:674

Removes one or more elements from a clip object. This method decrements the reference count of each of the elements.

Parameters
clip: IN PDEClip

IN/OUT The clip object from which an element is removed.

index: IN ASInt32

IN/OUT The first element to remove.

count: IN ASInt32

IN/OUT The number of elements to remove.

Returns
void
See Also

Typedefs(1)

Structures(1)

PDEClip

typedef struct _t_PDEClip* PDEClip
PEExpT.h:338

A list of PDEElement objects containing a list of PDEPath objects and PDEText objects that describe a clip state. PDEClip objects can be created and built up with PDEClip methods. Any PDEElement object can have PDEClip associated with it. PDEClip objects can contain PDEContainer objects and PDEGroup objects to an arbitrary level of nesting. This allows PDEContainer objects to be used to mark clip objects. PDEGroup objects inside PDEClip objects that contain at least one PDEText and no PDEPath objects have a special meaning. All PDEText objects contained in such a PDEGroup are considered to be part of the same BT/ET block. This means that the union of these PDEText objects makes up a single clipping path, as opposed to the intersection of the PDEText objects.

PDEColorSpace

16 items

Functions(12)

PDEColorSpaceCreate

PDEColorSpace PDEColorSpaceCreate(ASAtom family, PDEColorSpaceStruct *csStruct)
PEWProcs.h:1435

Creates a new color space object of the specified type. Call PDERelease() to dispose of the returned color space object when finished with it. Type of names Names Device-dependent names DeviceCMYK DeviceGray DeviceN DeviceRGB Device-independent names CalGray CalRGB Lab ICCBased Special names Indexed Pattern Separation

Parameters
family: ASAtom

IN/OUT Supports all PDF 1.3 color spaces, which include:

csStruct: PDEColorSpaceStruct *

IN/OUT Data for the type of color space you want to create.

Returns
PDEColorSpace

The newly created color space object.

PDEColorSpaceCreateFromCosObj

PEWProcs.h:956

Creates a new color space object from a Cos object. Call PDERelease() to dispose of the returned color space object when finished with it. Type of names Names Device-dependent names DeviceCMYK DeviceGray DeviceN DeviceRGB Device-independent names CalGray CalRGB Lab ICCBased Special names Indexed Pattern Separation

Parameters
cosObjP: IN const CosObj *

IN/OUT Supports all PDF 1.3 color spaces, which include:

Returns
PDEColorSpace

The newly created color space object.

PDEColorSpaceCreateInCosDoc

PDEColorSpace PDEColorSpaceCreateInCosDoc(IN ASAtom family, IN PDEColorSpaceStruct *csStruct, IN CosDoc cosDoc)
PEWProcs.h:3076

Creates a color space object like PDEColorSpaceCreate(), except that the client can specify the CosDoc in which the color space object is created. Call PDERelease() to dispose of the returned color space object when finished with it. Type of names Names Device-dependent names DeviceCMYK DeviceGray DeviceN DeviceRGB Device-independent names CalGray CalRGB Lab ICCBased Special names Indexed Pattern Separation

Parameters
family: IN ASAtom

IN/OUT Supports all PDF 1.3 color spaces, which include:

csStruct: IN PDEColorSpaceStruct *

IN/OUT Data for the type of color space you want to create.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEColorSpace

The newly created color space object.

PDEColorSpaceGetBase

PERProcs.h:1165

Gets the name of the base color space. This is a helper routine for indexed color spaces. Call this method to obtain the base color space and color values for an uncolored pattern in PDFEdit. Note that the base color values are in the color array in the PDEColorValue field for stroke and fill of a PDEGraphicStateP. Or, they are in the colorObj2 object if the base color space is DeviceN. To get the color values, a client gets the base color space, determines the type and number of components of the value, and looks them up in the PDEColorValue field.

Parameters
colorSpace: IN PDEColorSpace

The base color space.

Returns
ASAtom

The ASAtom for the name of the base color space. Use ASAtomGetString() to obtain a C string for the ASAtom.

PDEColorSpaceGetCTable

void PDEColorSpaceGetCTable(IN PDEColorSpace colorSpace, OUT ASUns8 *colorTableP)
PERProcs.h:1197

Gets the component information for an indexed color space.

Parameters
colorSpace: IN PDEColorSpace

IN/OUT The color space whose component information table is obtained.

colorTableP: OUT ASUns8 *

IN/OUT (Filled by the method) The color lookup table, which is numComps * (hiVal + 1) bytes long, where numComps is the number of components in the base colorSpace . Each entry in the table contains numComps bytes, and the table is indexed from 0 to hiVal , where hiVal is the highest index in the color table. The table is indexed from 0 to hival , thus the table contains hival + 1 entries.

Returns
void

PDEColorSpaceGetCosObj

void PDEColorSpaceGetCosObj(IN PDEColorSpace colorSpace, OUT CosObj *cosObjP)
PERProcs.h:1112

Gets the CosObj representation of the color space object. For image masks, use PDEElementGetGState() to obtain color information.

Parameters
colorSpace: IN PDEColorSpace

IN/OUT The color space whose Cos object is obtained.

cosObjP: OUT CosObj *

IN/OUT (Filled by the method) The Cos object for the color space.

Returns
void

The Cos object for colorSpace . Any color space that is in the Resources dictionary of the page is returned as a Cos object.

PDEColorSpaceGetHiVal

PERProcs.h:1178

Gets the highest index for the color lookup table for an indexed color space. Since the color table is indexed from zero to hiVal , the actual number of entries is hiVal + 1 .

Parameters
colorSpace: IN PDEColorSpace

IN/OUT An indexed color space.

Returns
ASInt32

The highest index ( hiVal ) in the color lookup table.

PDEColorSpaceGetName

PERProcs.h:1094

Gets the name of a color space object. Type of names Names Device-dependent names DeviceCMYK DeviceGray DeviceN DeviceRGB Device-independent names CalGray CalRGB Lab ICCBased Special names Indexed Pattern Separation

Parameters
colorSpace: IN PDEColorSpace

IN/OUT A color space object.

Returns
ASAtom

The color space object's name. It supports all PDF 1.3 color spaces, which include:

PDEColorSpaceGetNumComps

PERProcs.h:1141

Calculates the number of components in a color space. Color space Return value DeviceGray 1 CalGray 1 Separation 1 DeviceRGB 3 CalRGB 3 DeviceCMYK 4 Lab 4 DeviceN The number of components dependent on the specific color space object. ICCBased The number of components dependent on the specific color space object. Indexed 1 Call PDEColorSpaceGetBaseNumComps() to get the number of components in the base color space.

Parameters
colorSpace: IN PDEColorSpace

IN/OUT A color space object.

Returns
ASInt32

The number of components in colorSpace :

PDEColorSpaceGetStruct

void PDEColorSpaceGetStruct(IN PDEColorSpace cs, OUT PDEColorSpaceStruct *pdeColorSpaceStruct)
PERProcs.h:2980

Retrieves a from a PDEColorSpace . It supports all PDF version 1.3 color spaces except the Pattern color space. It is the responsibility of the caller to free the and the underlying allocations.

Parameters
cs: IN PDEColorSpace

IN/OUT The PDEColorSpace for which the structure is required.

pdeColorSpaceStruct: OUT PDEColorSpaceStruct *

IN/OUT The created for the color space.

Returns
void

Typedefs(3)

Structures(1)

PDEContainer

8 items

Functions(7)

PDEContainerCreate

PEWProcs.h:1180

Creates a container object. Call PDERelease() to dispose of the returned container object when finished with it.

Parameters
mcTag: IN ASAtom

IN/OUT The tag name for the container.

cosObjP: IN CosObj *

IN/OUT An optional Marked Content dictionary for the container.

isInline: IN ASBool

If true , it emits the container's dictionary into the content stream inline. If false , then the dictionary is emitted outside of the content stream and referenced by name. See the Property Lists section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 14.6.2, page 554. This document is provided on the web site of the International Standards Organization (ISO).

Returns
PDEContainer

The newly created container object.

PDEContainerGetDict

ASBool PDEContainerGetDict(IN PDEContainer pdeContainer, OUT CosObj *placeDictP, OUT ASBool *isInline)
PERProcs.h:1422

Gets the Marked Content dictionary for a container.

Parameters
pdeContainer: IN PDEContainer
placeDictP: OUT CosObj *
isInline: OUT ASBool *

IN/OUT (Filled by the method) true if the dictionary is inline, false otherwise. It is undefined if pdeContainer has no Marked Content dictionary.

Returns
ASBool

true if pdeContainer has a Marked Content dictionary, false otherwise.

PDEContainerSetContent

void PDEContainerSetContent(IN PDEContainer pdeContainer, IN PDEContent pdeContent)
PEWProcs.h:1233

Sets the content for a container. The existing PDEContent is released by this method. This method decrements the reference count of the previous content of the container and increments the reference count of the new PDEContent.

Parameters
pdeContainer: IN PDEContainer

IN/OUT A container.

pdeContent: IN PDEContent

IN/OUT The content of pdeContainer .

Returns
void

PDEContainerSetDict

void PDEContainerSetDict(IN PDEContainer pdeContainer, IN CosObj *placeDictP, IN ASBool isInline)
PEWProcs.h:1216

Sets the Marked Content dictionary for a PDEContainer. The dictionary can be emitted inline or referenced from the \Properties key in the \Resources dictionary of the containing stream.

Parameters
pdeContainer: IN PDEContainer

The container whose dictionary is changed.

placeDictP: IN CosObj *

The Marked Content dictionary being set into pdeContainer .

isInline: IN ASBool

If true , it emits the container's dictionary into the content stream inline. If false , then the dictionary is emitted outside of the content stream and referenced by name. See the Property Lists section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 14.6.2, page 554. This document is provided on the web site of the International Standards Organization (ISO).

Returns
void

Structures(1)

PDEContainer

typedef struct _t_PDEContainer* PDEContainer
PEExpT.h:248

A group of PDEElement objects on a page in a PDF file. In the PDF file, containers are delimited by Marked Content BMC/EMC or BDC/EMC pairs. Every PDEContainer has a Marked Content tag associated with it. In addition to grouping a set of elements, a BDC/EMC pair specifies a property list to be associated with the grouping. Thus, a PDEContainer corresponding to a BDC/EMC pair also has a property list dictionary associated with it.

PDEContent

24 items

Functions(20)

PDEContentAddElem

void PDEContentAddElem(IN PDEContent pdeContent, IN ASInt32 addAfterIndex, IN PDEElement pdeElement)
PEWProcs.h:145

Inserts an element into a PDEContent. This method increments the reference count of pdeElement .

Parameters
pdeContent: IN PDEContent

The content to which pdeElement is added.

addAfterIndex: IN ASInt32

The location after which pdeElement is added. It should be kPDEBeforeFirst to add to the beginning of the display list.

pdeElement: IN PDEElement

The element to add to pdeContent . The reference count of pdeElement is incremented.

Returns
void

PDEContentAddPage

void PDEContentAddPage(OUT PDEContent theContent, IN ASInt32 insertAfterIndex, IN CosDoc containerDoc, IN PDPage srcPage, IN ASFixedMatrix *dstMatrix, IN ASAtom annotTypes[], IN ASInt32 flags, IN ASFixedRect *bbox)
PEWProcs.h:1606

Superseded by PDEContentAddPageEx() in Acrobat 10.0. Adds the specfied PDPage to the PDEContent as an Xobject form. It adds a reference to the Xobject form at the indicated index in the PDE Content; the index may be less than 0 , which indicates the object is to be appended to the content.

Parameters
theContent: OUT PDEContent

The content to set for the page.

insertAfterIndex: IN ASInt32

The index indicates the location after which the specified element is to be added. The index should be kPDBeforeFirst to add to the beginning of the display list.

containerDoc: IN CosDoc

The CosDoc in which the page is contained.

srcPage: IN PDPage

The page that will be inserted at insertAfterIndex in theContent .

dstMatrix: IN ASFixedMatrix *

(May be NULL ) The matrix applied to the default matrix of the PDPage that is inserted into the CosDoc.

annotTypes: IN ASAtom

If the page contains annotations, the annotTypes list is used to determine which annotation types are pumped into the page contents of the CosDoc. This list is a list of atoms of the subtypes of annotations to be included. When the list is NULL, all Annotations are excluded. NOTE: The annotations included will not be included AS annotations. Rather, visible Annotations will be included in content.

flags: IN ASInt32

(May be 0 ) - may be one of:

Value

Description

kAnnotAll

Copy all annotation types. If this is not set, then the annotTypes list will be consulted.

kDoNotMergeFonts

Do not merge duplicate fonts when copying.

bbox: IN ASFixedRect *

(May be NULL ) specifies the destination BBox for the page being inserted. If it is NULL , the new page's media box is used.

Returns
void

PDEContentAddPageEx

void PDEContentAddPageEx(OUT PDEContent theContent, IN ASInt32 insertAfterIndex, IN CosDoc containerDoc, IN PDPage srcPage, IN ASDoubleMatrix *dstMatrix, IN ASAtom annotTypes[], IN ASInt32 flags, IN ASDoubleRect *bbox)
PEWProcs.h:3255

Adds the specfied PDPage to the PDEContent as an Xobject form. Supersedes PDEContentAddPage() in Acrobat 10.0. It adds a reference to the Xobject form at the indicated index in the PDE Content; the index may be less than 0 , which indicates the object is to be appended to the content.

Parameters
theContent: OUT PDEContent

The content to set for the page.

insertAfterIndex: IN ASInt32

The index indicates the location after which the specified element is to be added. The index should be kPDBeforeFirst to add to the beginning of the display list.

containerDoc: IN CosDoc

The CosDoc in which the page is contained.

srcPage: IN PDPage

The page that will be inserted at insertAfterIndex in theContent .

dstMatrix: IN ASDoubleMatrix *

(May be NULL ) The matrix applied to the default matrix of the PDPage that is inserted into the CosDoc.

annotTypes: IN ASAtom

If the page contains annotations, the annotTypes list is used to determine which annotation types are pumped into the page contents of the CosDoc. This list is a list of atoms of the subtypes of annotations to be included. When the list is NULL, all Annotations are excluded. NOTE: The annotations included will not be included AS annotations. Rather, visible Annotations will be included in content.

flags: IN ASInt32

(May be 0 ) - may be one of:

Value

Description

kAnnotAll

Copy all annotation types. If this is not set, then the annotTypes list will be consulted.

kDoNotMergeFonts

Do not merge duplicate fonts when copying.

bbox: IN ASDoubleRect *

(May be NULL ) specifies the destination BBox for the page being inserted. If it is NULL , the new page's media box is used.

Returns
void

PDEContentCreateFromCosObj

PDEContent PDEContentCreateFromCosObj(const CosObj *contents, const CosObj *resources)
PERProcs.h:108

Creates a content object from a Cos object. This is the main method for obtaining a PDEContent object. Call PDERelease() to dispose of the returned content object when finished with it.

Parameters
contents: const CosObj *

IN/OUT A Cos object that is the source for the content. It may be page contents, a Form XObject, a Type 3 font CharProc, or an appearance dictionary for an annotation.

resources: const CosObj *

IN/OUT The object's Resources dictionary. If the Form or Type 3 font or appearance dictionary contains a Resources dictionary, this dictionary must be passed in resources . Otherwise, it must be the page resources object of the page containing the Form or Type 3 font contents object.

Returns
PDEContent

The content from the Cos object.

PDEContentFlattenOC

PEWProcs.h:2319

Flattens the content, removing any PDEElement objects that are not visible in the given optional-content context, and removing the optional-content information from any visible PDFElement objects.

Parameters
content: PDEContent

The content to be modified.

context: PDOCContext

The optional-content context in which content is checked for visibility.

Returns
ASBool

true if the operation is successful, false otherwise.

PDEContentGetAttrs

void PDEContentGetAttrs(IN PDEContent pdeContent, OUT PDEContentAttrsP attrsP, IN ASUns32 attrsSize)
PERProcs.h:120

Gets the attributes of a content.

Parameters
pdeContent: IN PDEContent

IN/OUT A content object.

attrsP: OUT PDEContentAttrsP

IN/OUT (Filled by the method) A pointer to a PDEContentAttrs structure containing the attributes of the content.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

Returns
void

PDEContentGetDefaultColorSpace

PERProcs.h:1831

Gets a default color space from a PDEContent object.

See the "Default Color Spaces" section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, under "CIE-Based Color Spaces" in section 8.6.5.6, page 152. You can find this document on the web store of the International Standards Organization (ISO).

@note This method does not change the reference count of the returned PDEColorSpace.

Parameters
pdeContent: IN PDEContent
colorSpaceName: IN ASAtom
Returns

PDEContentGetResources

PERProcs.h:142

Gets the number of resources of the specified type and, optionally, gets the pointers to the resource objects.

Parameters
pdeContent: IN PDEContent

IN/OUT A content object.

type: IN ASInt32

IN/OUT The type of resources to query or obtain: PDEFont, PDEXGroup, or PDEColorSpace. It must be one of PDEContentGetResourceFlags.

resourcesP: OUT PDEObject *

IN/OUT (Filled by the method) If non- NULL , it must point to an array of PDEObject pointers. On return, the array contains pointers to the requested resources. If resourcesP is NULL , only the number of resources of type is returned. Note that the object in resourcesP may only be valid for this method. Use PDEAcquire() if you need to hold on to the object longer than the scope of resourcesP .

Returns
ASInt32

The number of resources of type returned in resourcesP .

PDEContentRemoveElem

void PDEContentRemoveElem(IN PDEContent pdeContent, IN ASInt32 index)
PEWProcs.h:125

Removes an element from a PDEContent. This decrements the reference count of the element removed.

Parameters
pdeContent: IN PDEContent

IN/OUT A content object.

index: IN ASInt32

IN/OUT The index in pdeContent of the element to remove whose reference count is decremented.

Returns
void

PDEContentSetContainingStream

void PDEContentSetContainingStream(IN PDEContent pdeContent, IN CosObj containingStm)
PEWProcs.h:2716

Sets the containing stream and owner stream for any marked content reference handles attached to containers within the content. This call should not be used when the content is being directly added to a page. If the content is set with PDPageSetPDEContent(), PDEFormSetContent(), or PDEGroupSetContent(), this step occurs automatically.

Parameters
pdeContent: IN PDEContent

The content stream within which to update marked content references.

containingStm: IN CosObj

The containing stream object for the content stream.

Returns
void

PDEContentSetDefaultColorSpace_PEWCalls_

void PDEContentSetDefaultColorSpace_PEWCalls_(IN PDEContent pdeContent, IN ASAtom colorSpaceName, IN PDEColorSpace colorSpace)
PEWProcs.h:3113

Sets the default color space in a PDEContent object. The reference count on any existing default color space is decremented, and the reference count on the new color space is incremented. Note that the new color space can be NULL , indicating that there is no default color space. See the "Default Color Spaces" section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, under "CIE-Based Color Spaces" in section 8.6.5.6, page 152. You can find this document on the web store of the International Standards Organization (ISO).

Parameters
pdeContent: IN PDEContent

IN A content object.

colorSpaceName: IN ASAtom

IN An ASAtom for the name of the desired color space. It must be an ASAtom for one of the following:

DefaultRGB

DefaultCMYK

DefaultGray

colorSpace: IN PDEColorSpace

IN The color space to use as the default.

Returns
void

PDEContentSetPage

void PDEContentSetPage(IN PDEContent pdeContent, IN CosObj pageObj)
PEWProcs.h:2697

Sets the page on which marked content is drawn upon for any marked content reference handles attached to containers within the content. If content is set with PDPageSetPDEContent(), PDEFormSetContent(), or PDEGroupSetContent(), this step occurs automatically. This call should only be used when the content is being directly added to a page.

Parameters
pdeContent: IN PDEContent

The content stream whose marked content reference handles should be updated.

pageObj: IN CosObj

The page object upon which contents are drawn.

Returns
void

PDEContentSetStreamOwner

void PDEContentSetStreamOwner(IN PDEContent pdeContent, IN CosObj streamOwner)
PEWProcs.h:2734

Sets the stream owner for any marked content reference handles attached to containers within the content. This call should not be used when the content is being directly added to a page. If content is set with PDPageSetPDEContent(), PDEFormSetContent(), or PDEGroupSetContent(), this step occurs automatically.

Parameters
pdeContent: IN PDEContent

The content stream within which to update marked content references.

streamOwner: IN CosObj

The owner object for any references attached to the content.

Returns
void

PDEContentToCosObj

void PDEContentToCosObj(IN PDEContent pdeContent, IN ASUns32 flags, IN PDEContentAttrsP attrs, IN ASUns32 attrsSize, IN CosDoc cosDoc, IN PDEFilterArrayP filtersP, OUT CosObj *contentsP, OUT CosObj *resourcesP)
PEWProcs.h:100

This is the main method for converting a PDEContent into PDF contents and resources.

This method does not change the PDEContent object or its reference count.

The caller of this function is responsible for adding the contents and the resources returned from this method to the Page Object.

Do not use this method to put a PDEContent into a PDPage. Instead, call PDPageSetPDEContent().

Parameters
pdeContent: IN PDEContent
flags: IN ASUns32
attrs: IN PDEContentAttrsP
attrsSize: IN ASUns32
cosDoc: IN CosDoc
filtersP: IN PDEFilterArrayP
contentsP: OUT CosObj *

IN/OUT (Filled by the method) The Cos object for the resulting contents in pdeContent .

resourcesP: OUT CosObj *

IN/OUT (Filled by the method) The Cos object for the resulting resources in pdeContent . Note that the client is responsible for putting the resourcesP dictionary into the contentsP stream for non-page objects. The client must do this for XObject Forms and appearance dictionaries in annotations. For Type 3 fonts, the resource dictionaries must be merged and put into the Type 3 font dictionary. For a page, the contents and resources must be put into the page object.

Returns
void

Structures(1)

PDEContent

typedef struct _t_PDEContent* PDEContent
PEExpT.h:122

Contains the modifiable contents of a PDPage. A PDEContent object may be obtained from an existing page, from a Form XObject, or from a Type 3 CharProc. You can create an empty PDEContent object. A PDEContent object contains PDEElement objects. In addition, a PDEContent object may have attributes such as a Form matrix and setcachedevice parameters.

Enums(3)

PDEContentFlags

PEExpT.h:1719

A bit field for PDEContentAttrs .

Values
kPDESetCacheDevice
—

If set, cacheDevice contains 6 cache device values.

kPDESetCharWidth
—

If set, cacheDevice contains 2 charwidth values.

kPDEFormMatrix
—

If set, formMatrix contains a valid matrix.

PDEContentGetResourceFlags

PEExpT.h:1701

A bit field for PDEContentAttrs .

Values
kPDEGetFonts
—

Obtain font resources.

kPDEGetXObjects
—

Obtain Xobject resources.

kPDEGetColorSpaces
—

Obtain color space resources.

PDEContentToCosObjFlags

PEExpT.h:1612

A bit field for the PDEContentToCosObj() method, indicating the type of object to create and how it is created. To learn about color operators, see the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, page 171. You can find this document on the web store of the International Standards Organization (ISO).

Values
kPDEContentToPage
—

Create page contents.

kPDEContentToForm
—

Create a form.

kPDEContentToCharProc
—

Create charprocs.

kPDEContentRev1Compat
—

Currently unused.

kPDEContentDoNotResolveForms
—

Currently unused.

kPDEContentDoNotResolveType3
—

Currently unused.

kPDEContentEmitDefaultRGBAndGray
—

Emit calibrated RGB and gray information using the PDF 1.0 compatible mechanism. In this case, generate rg and k page operators and place DefaultGray and DefaultRGB color space arrays in the Resources dictionary. See the Color Operators section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 8.6.8, page 171.

kPDEContentInheritState
—
kPDEContentDoNotEmitBXEX
—

Prevents the emission of the content compatibility operators, BX/EX, which cause issues for some versions of PDF/A or PDF/X.

kPDEContentUseMaxPrecision
—

By default 3 digit precision after decimal point is used for floating point values. Using this flag increases precision from 3 digits to 5 digits after decimal point.

kPDEContentUseSpaceAsEOL
—

Use a space character as the EOL character in the content stream to make the Flate compressor more effective.

kPDEContentHonorWasSetFlags
—

Emit a gstate or textstate parameter for any element, only if the corresponding WasSetFlag is set.

kPDEContentSkipBBox
—

Setting this flag will skip optimization of bounding box of form XObject.

kPDEContentSkipResReset
—

Setting this flag will skip resetting of ResTable in PDEContent and it also skips creating new resource dictionary in document and uses resource dictionary from input.

kPDEContentFormFromPage
—

Note that this form content was created from a page, and should never inherit any state from the calling code, nor allow any state to leak from the form

PDEDeviceNColors

3 items

Functions(2)

PDEDeviceNColorsCreate

PEWProcs.h:1452

Creates an object that can be used to store n color components when in a DeviceN color space. Call PDERelease() to dispose of the returned PDEDeviceNColors object when finished with it.

Parameters
pColorValues: IN ASFixed *

IN/OUT A pointer to an array of ASFixed values.

numValues: IN ASInt32

IN/OUT The length of the array.

Returns
PDEDeviceNColors

An object containing values specifying a color in a PDEDeviceNColors color space.

Structures(1)

PDEElement

25 items

Functions(22)

PDEElementGetAllVisibilities

ASUns32 PDEElementGetAllVisibilities(PDEElement elem, PDEContent content, PDOCContext ocContext, ASBool *visibilities, ASUns32 capacity)
PERProcs.h:2425

Tests whether all occurrences of the element are visible in a given content and optional-content context. It traverses the content to find each occurrence of the element, in the supplied content and in all nested contents. To find the visibility of a content element without considering its parent, use PDEElementIsCurrentlyVisible(). It returns the number of occurrences and an array of boolean values containing true for each occurrence of the element that is visible in the context, taking into account the context's NonOCDrawing and PDOCDrawEnumType values.

Parameters
elem: PDEElement

The element for which to obtain visibilities.

content: PDEContent

The content containing the element.

ocContext: PDOCContext

The optional-content context in which the element is tested.

visibilities: ASBool *

(Filled by the method) An array of boolean values containing true for each occurrence of the element that is visible in the context.

capacity: ASUns32

The size of the visibilities array.

Returns
ASUns32

The number of occurrences of the element in the content.

PDEElementGetBBox

void PDEElementGetBBox(IN PDEElement pdeElement, OUT ASFixedRectP bboxP)
PERProcs.h:197

Gets the bounding box for an element. The returned bounding box is guaranteed to encompass the element, but is not guaranteed to be the smallest box that could contain the element. For example, for an arc, bboxP encloses the bezier control points, and not just the curve itself.

Parameters
pdeElement: IN PDEElement

IN/OUT An element whose bounding box is obtained.

bboxP: OUT ASFixedRectP

IN/OUT (Filled by the method) A pointer to a ASFixedRect structure specifying the bounding box of pdeElement , specified in user space coordinates.

Returns
void

PDEElementGetClip

PERProcs.h:271

Gets the current clip for an element. The current clipping path is part of the graphics state. Element types that are not graphics elements (for example, PDEContainer and PDEPlace) do not have an associated gstate and should not be expected to return valid results. This method does not change the reference count of the clip object.

Parameters
pdeElement: IN PDEElement

IN/OUT An element whose clip is obtained. Note that a clip may be shared by many elements. Use care when modifying a clip. Copy it first if you want to modify the clip for a specific element.

Returns
PDEClip

The clip object for pdeElement .

PDEElementGetGState

void PDEElementGetGState(IN PDEElement pdeElement, OUT PDEGraphicStateP stateP, IN ASUns32 stateSize)
PERProcs.h:224

Gets the graphics state information for an element. This method is only valid for PDEForm, PDEImage, PDEPath, and PDEShading elements.

Parameters
pdeElement: IN PDEElement

An element whose graphics state is obtained.

stateP: OUT PDEGraphicStateP

(Filled by the method) A pointer to a PDEGraphicState structure that contains graphics state information for pdeElement . This PDEGraphicStateP may contain PDEObjects for color spaces or an ExtGState. They are not acquired by this method. Note that for a PDEImage, only the ExtGState value is used for images. For indexed images, the fill color space and values are categorized in the PDEImage object.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDEElementGetGStateEx

void PDEElementGetGStateEx(IN PDEElement pdeElement, OUT PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PERProcs.h:3231

Gets the graphics state information for an element. This method fills PDEGraphicStateEx as output which is higher precision alternative of PDEGraphicState structure.

This method is only valid for PDEForm, PDEImage, PDEPath, and PDEShading elements.

Parameters
pdeElement: IN PDEElement
stateP: OUT PDEGraphicStateExP
stateSize: IN ASUns32
Returns
void

PDEElementGetMatrix

void PDEElementGetMatrix(IN PDEElement pdeElement, OUT ASFixedMatrixP matrixP)
PERProcs.h:249

Superseded by PDEElementGetMatrixEx() in Acrobat 10.0. Gets the transformation matrix for an element. This matrix provides the transformation from user space to device space for the element. If there is no cm ( concatmatrix ) operator in the page stream, the matrix is the identity matrix.

Parameters
pdeElement: IN PDEElement

An element whose transformation matrix is obtained.

matrixP: OUT ASFixedMatrixP

(Filled by the method) A pointer to ASFixedMatrix that holds a transformation matrix for pdeElement . If pdeElement is a text object, it returns the identity matrix.

Returns
void

PDEElementGetMatrixEx

void PDEElementGetMatrixEx(IN PDEElement pdeElement, OUT ASDoubleMatrixP matrixP)
PERProcs.h:3023

Supersedes PDEElementGetMatrix() in Acrobat 10.0. Gets the transformation matrix for an element. This matrix provides the transformation from user space to device space for the element. If there is no cm ( concatmatrix ) operator in the page stream, the matrix is the identity matrix.

Parameters
pdeElement: IN PDEElement

An element whose transformation matrix is obtained.

matrixP: OUT ASDoubleMatrixP

(Filled by the method) A pointer to ASDoubleMatrix that holds a transformation matrix for pdeElement . If pdeElement is a text object, it returns the identity matrix.

Returns
void

PDEElementGetOCMD

PERProcs.h:2365

Gets an optional-content membership dictionary (OCMD) object associated with the element. The element must be a PDEForm, PDEImage (XObject image), or PDEContainer. If it is not one of these, the method returns NULL . If the element is a PDEForm or PDEImage, the method returns the dictionary attached to the element's Cos XObject dictionary. If the element is a PDEContainer, and it is for optional content, the method returns the dictionary. If it is not for optional content, the method returns NULL .

Parameters
elem: PDEElement

The element from which the dictionary is obtained.

Returns
PDOCMD

The dictionary object, or NULL if the element is not a PDEForm, PDEImage (XObject image), or PDEContainer, or if it is a container that is not for optional content.

PDEElementHasGState

ASBool PDEElementHasGState(IN PDEElement pdeElement, OUT PDEGraphicStateP stateP, IN ASUns32 stateSize)
PERProcs.h:2026

Gets the graphics state information for an element.

Parameters
pdeElement: IN PDEElement

The PDEElement whose graphics state is to be obtained.

stateP: OUT PDEGraphicStateP

(Filled by the method) A pointer to a PDEGraphicState structure that contains graphics state information for pdeElement .

stateSize: IN ASUns32

The size of the stateP buffer. Set it to sizeof(PDEGraphicState) .

Returns
ASBool

true if the element has a graphics state, false otherwise.

PDEElementHasGStateEx

ASBool PDEElementHasGStateEx(IN PDEElement pdeElement, OUT PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PERProcs.h:3252

Gets the graphics state information for an element. This method fills PDEGraphicStateEx as output which is higher precision alternative of PDEGraphicState structure.

Parameters
pdeElement: IN PDEElement
stateP: OUT PDEGraphicStateExP
stateSize: IN ASUns32
Returns

PDEElementIsAtPoint

ASBool PDEElementIsAtPoint(IN PDEElement elem, IN ASFixedPoint point)
PERProcs.h:1680

Tests whether a point is on an element.

Parameters
elem: IN PDEElement

IN/OUT The element to test. If PDEElement is a PDEText or PDEImage, it uses the bounding box of the PDEElement to make the check. If the PDEElement is a PDEPath and it is stroked, it checks if the point is on the path. If the PDEElement is a PDEPath and it is filled, it checks if the point is in the fill area, taking into consideration whether it is filled using the non-zero winding number rule or the even-odd rule.

point: IN ASFixedPoint

IN/OUT The point, specified in user space coordinates.

Returns
ASBool

true if the point is on the element, false otherwise.

PDEElementIsAtRect

ASBool PDEElementIsAtRect(IN PDEElement elem, IN ASFixedRect rect)
PERProcs.h:1704

Tests whether any part of a rectangle is on an element.

Parameters
elem: IN PDEElement

IN/OUT The element to test. If PDEElement is a PDEText or PDEImage, it uses the bounding box of the PDEElement to make the check. If the PDEElement is a PDEPath and it is stroked, it checks if the rectangle is on the path. If the PDEElement is a PDEPath and it is filled, it checks if the rectangle is in the fill area, taking into consideration whether it is filled using the non-zero winding number rule or the even-odd rule.

rect: IN ASFixedRect

IN/OUT The rectangle, specified in user space coordinates.

Returns
ASBool

true if any part of the rectangle is on the element, false otherwise.

PDEElementIsCurrentlyVisible

PERProcs.h:2395

Tests whether an element is visible in a given content and optional-content context. It traverses the content to find the first occurrence of the element, in the supplied content and in all nested contents. It returns true if the first occurrence of the element is visible in the context, taking into account the context's NonOCDrawing and PDOCDrawEnumType values. The content can be NULL . In this case: If the element is a PDEForm, PDEImage, or PDEContainer, the method checks the object to see if it has an optional-content membership dictionary (OCMD) attached to it. If so, the method returns true if the object is visible, without considering whether the PDEContent that the element belongs to is visible. If the element is not one of these types, the method returns true .

Parameters
elem: PDEElement

The element to test.

content: PDEContent

The content containing the element.

ocContext: PDOCContext

The optional-content context in which the element is tested.

Returns
ASBool

Returns true if the element is visible in the given content and context, false if it is hidden.

PDEElementMakeVisible

PERProcs.h:2443

Makes an element visible in a given content and optional-content context, by manipulating the ON-OFF states of the optional-content groups.

Parameters
elem: PDEElement

The element for which to set the visibility state.

content: PDEContent

The content containing the element.

ocContext: PDOCContext

The optional-content context in which the element is made visible.

Returns
ASBool

true if the element is successfully made visible in the given content and context, false otherwise.

PDEElementRemoveOCMD

PEWProcs.h:2305

Dissociates an optional-content membership dictionary (OCMD) object from the element. The element must be a PDEForm, a PDEImage (XObject image), or a PDEContainer. If it is not one of these, nothing happens: If the element is a PDEForm or PDEImage, the method removes the dictionary from the element's Cos XObject dictionary. If the element is a PDEContainer for optional content, the method removes the dictionary, but does not destroy the container.

Parameters
elem: PDEElement

The element for which to remove the dictionary.

Returns
void

PDEElementSetClip

void PDEElementSetClip(IN PDEElement pdeElement, IN PDEClip pdeClip)
PEWProcs.h:211

Sets the current clip for an element. The pdeElement parameter's previous clip's reference count is decremented (if it had one), and the pdeClip parameter's reference count is incremented.

Parameters
pdeElement: IN PDEElement

IN/OUT An element whose clip is set.

pdeClip: IN PDEClip

IN/OUT The clip to set for pdeContent .

Returns
void

PDEElementSetGState

void PDEElementSetGState(IN PDEElement pdeElement, IN PDEGraphicStateP stateP, IN ASUns32 stateSize)
PEWProcs.h:174

Sets the graphics state information for an element. This method is valid only for PDEForm, PDEImage, PDEPath, and PDEShading elements. This method causes any of the stateP parameter's color space or ExtGState objects to have their reference count incremented, and previous graphic state objects to be decremented.

Parameters
pdeElement: IN PDEElement

An element whose graphics state is set.

stateP: IN PDEGraphicStateP

A pointer to a PDEGraphicState structure with graphics state information to set for pdeContent . Any of the stateP parameter's color space or ExtGState objects have their reference count incremented.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDEElementSetGStateEx

void PDEElementSetGStateEx(IN PDEElement pdeElement, IN PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PEWProcs.h:3739

Sets the graphics state information for an element. This method takes pointer to PDEGraphicStateEx as input which is higher precision alternative of PDEGraphicState structure.

This method is valid only for PDEForm, PDEImage, PDEPath, and PDEShading elements.

Parameters
pdeElement: IN PDEElement
stateP: IN PDEGraphicStateExP
stateSize: IN ASUns32
Returns
void

PDEElementSetMatrix

void PDEElementSetMatrix(IN PDEElement pdeElement, IN ASFixedMatrixP matrixP)
PEWProcs.h:195

Superseded by PDEElementSetMatrixEx() in Acrobat 10.0. Sets the transformation matrix for an element. The element may not be a PDEContainer, a PDEGroup, a PDEPlace, or a PDEText.

Parameters
pdeElement: IN PDEElement

IN/OUT An element whose transformation matrix is set.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the transformation matrix to set for pdeContent .

Returns
void

PDEElementSetMatrixEx

void PDEElementSetMatrixEx(IN PDEElement pdeElement, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3636

Sets the transformation matrix for an element. Supersedes PDEElementSetMatrix() in Acrobat 10.0. The element may not be a PDEContainer, a PDEGroup, a PDEPlace, or a PDEText.

Parameters
pdeElement: IN PDEElement

IN/OUT An element whose transformation matrix is set.

matrixP: IN ASDoubleMatrixP

IN/OUT A pointer to an ASDoubleMatrix that holds the transformation matrix to set for pdeContent .

Returns
void

PDEElementSetOCMD

PEWProcs.h:2282

Associates an optional-content membership dictionary (OCMD) object with the element. The element must be a PDEForm, a PDEImage (XObject image), or a PDEContainer. If it is not one of these, nothing happens: If the element is a PDEForm or PDEImage, the method attaches the dictionary to the element's Cos XObject dictionary. If the element is a PDEContainer, and it is already for optional content, the optional-content information is replaced. If it is not already for optional content, a new PDEContainer for optional content is created and nested inside the specified container.

Parameters
elem: PDEElement

The element for which to set the dictionary.

pdOCMD: PDOCMD

The new dictionary.

Returns
void

Typedefs(1)

Structures(1)

PDEElement

typedef struct _t_PDEElement* PDEElement
PEExpT.h:143

The base class for elements of a page display list (PDEContent) and for clip objects. The general PDEElement methods allow you to get and set general element properties.

Enums(1)

PDEElementCopyFlags

PEExpT.h:1933

A bit field for PDEElementCopy() .

Values
kPDEElementCopyForClip
—

The copied element does not need gstate or clip .

kPDEElementCopyClipping
—

Acquire the clip path and put it in the copied object.

See Also

PDEElements

1 items

Functions(1)

PDEEnumElements

void PDEEnumElements(IN const CosObj *contents, IN const CosObj *resources, IN ASUns32 flags, IN PDEElementEnumProc enumProc, IN void *enumProcClientData)
PERProcs.h:1519

Enumerates all the PDEElements in a given stream. It is similar to PDEContentCreateFromCosObj(), but provides enumeration instead of a list of elements. If marked content is not ignored, each PDEContainer contains a PDEContent list within itself.

Parameters
contents: IN const CosObj *

IN/OUT A Cos object that is the source for the content stream. It may be page contents, a Form XObject, a Type 3 font CharProc, or an appearance object from an annotation.

resources: IN const CosObj *

IN/OUT The object's Resources dictionary. If the Form or Type 3 font or appearance dictionary contains a Resources dictionary, this dictionary must be passed in resources . Otherwise, it must be the page resources object of the page containing the Form or Type 3 font contents object.

flags: IN ASUns32

IN/OUT Flags from PDEEnumElementsFlags.

enumProc: IN PDEElementEnumProc

IN/OUT A user-supplied callback to call once for each top-level element. Note that the element in enumProc may only be valid for this method. Use PDEAcquire() if you need to hold on to the element longer than the scope of enumProc .

enumProcClientData: IN void *

IN/OUT A pointer to user-supplied data to pass to enumProc each time it is called.

Returns
void

PDEEndContainer

2 items

Functions(1)

Structures(1)

PDEEndGroup

2 items

Functions(1)

Structures(1)

PDEExtGState

31 items

Functions(30)

PDEExtGStateCreate

PEWProcs.h:1097

Creates a new PDEExtGState from a Cos object. See the description of Extended Graphic States in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 8.4.5, page 128. You can find this document on the web store of the International Standards Organization (ISO). Call PDERelease() to dispose of the returned PDEExtGState when finished with it.

Parameters
cosObjP: IN CosObj *

A Cos object for a dictionary of type ExtGState.

Returns
PDEExtGState

The PDEExtGState for cosObjP .

PDEExtGStateGetAIS

PERProcs.h:2146

Returns the value of the Alpha Is Shape (AIS) member of the graphics state. If AIS is true , the sources of alpha are treated as shape; otherwise they are treated as opacity values. If the value is not set, the default value of false is returned.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASBool

See above.

PDEExtGStateGetBlendMode

PERProcs.h:2131

Returns the blend mode for the color composite for each object painted. The following are valid names: Compatible Normal Multiply Screen Difference Darken Lighten ColorDodge ColorBurn Exclusion HardLight Overlay SoftLight Luminosity Hue Saturation Color

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASAtom

If the value has not been set, a value of Compatible is returned. See above.

PDEExtGStateGetOPFill

PERProcs.h:2056

Returns whether overprint is enabled for painting operations other than stroking.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASBool

Returns the value of the / op key in the ExtGState dictionary. If the value is not found, the default value of false is returned.

PDEExtGStateGetOPStroke

PERProcs.h:2070

Returns whether overprint is enabled for stroke painting operations.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASBool

Returns the value of the / OP key in the ExtGState dictionary. If the value is not found, the default value of false is returned.

PDEExtGStateGetSA

PERProcs.h:2296

Returns whether stroke adjustment is enabled in the graphics state.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASBool

Returns the value of the / SA key in the ExtGState dictionary. If the value is not set, the default value of false is returned.

PDEExtGStateGetTK

PERProcs.h:2250

Returns whether text knockout is enabled in the graphics state.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

Returns
ASBool

Returns the value of the / TK key in the ExtGState dictionary. If the value is not found, the default value of true is returned.

PDEExtGStateSetAIS

void PDEExtGStateSetAIS(IN PDEExtGState pdeExtGState, IN ASBool alphaIsShape)
PEWProcs.h:1944

Specifies if the alpha is to be interpreted as a shape or opacity mask.

Parameters
pdeExtGState: IN PDEExtGState

The extended graphics state object.

alphaIsShape: IN ASBool

Indicates whether the sources of alpha are to be treated as shape ( true ) or opacity ( false ). This determines the interpretation of the constant alpha (ca or CA) and soft mask (SMask) parameters of the graphics state, as well as a soft-mask image (Smask entry) of an image XObject.

Returns
void

PDEExtGStateSetBlendMode

void PDEExtGStateSetBlendMode(IN PDEExtGState pdeExtGState, IN ASAtom blendMode)
PEWProcs.h:1929

Sets the blend mode for the color composites for each object painted. The following mode names are valid: Compatible Normal Multiply Screen Difference Darken Lighten ColorDodge ColorBurn Exclusion HardLight Overlay SoftLight Luminosity Hue Saturation Color

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

blendMode: IN ASAtom

IN/OUT The new blend mode.

Returns
void

PDEExtGStateSetOPFill

void PDEExtGStateSetOPFill(IN PDEExtGState pdeExtGState, IN ASBool overprint)
PEWProcs.h:1853

Specifies if overprint is enabled for painting operations other than stroking. It corresponds to the / op key within the ExtGState's dictionary.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

overprint: IN ASBool

IN/OUT Pass true to enable overprint, false to disable overprint.

Returns
void

PDEExtGStateSetOPM

void PDEExtGStateSetOPM(IN PDEExtGState pdeExtGState, IN ASInt32 opm)
PEWProcs.h:1840

Sets the overprint mode. It corresponds to the / OPM key within the ExtGState's dictionary.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

opm: IN ASInt32

IN/OUT Overprint mode.

Returns
void

PDEExtGStateSetOPStroke

void PDEExtGStateSetOPStroke(IN PDEExtGState pdeExtGState, IN ASBool overprint)
PEWProcs.h:1866

Specifies if overprint is enabled for stroke operations. It corresponds to the / OP key within the ExtGState's dictionary.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

overprint: IN ASBool

IN/OUT Pass true to enable overprint, false to disable overprint.

Returns
void

PDEExtGStateSetOpacityFill

PEWProcs.h:1881

Sets the opacity value for painting operations other than stroking. The value must be in the range from 0 to 1 inclusive. It corresponds to the / ca key within the ExtGState's dictionary. The value from 0 to 1 refers to a float number (not an ASFixed value) that should be converted to ASFixed using FloatToASFixed().

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

opacity: IN ASFixed

IN/OUT The new opacity value.

Returns
void

PDEExtGStateSetOpacityStroke

PEWProcs.h:1896

Sets the opacity value for stroke operations. The value must be in the range from 0 to 1 inclusive. It corresponds to the / CA key within the ExtGState's dictionary. The value from 0 to 1 refers to a float number (not an ASFixed value) that should be converted to ASFixed using FloatToASFixed().

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

opacity: IN ASFixed

IN/OUT The new opacity value.

Returns
void

PDEExtGStateSetSA

void PDEExtGStateSetSA(IN PDEExtGState pdeExtGState, IN ASBool strokeAdjust)
PEWProcs.h:2224

Specifies whether stroke adjustment is enabled in the graphics state.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

strokeAdjust: IN ASBool

IN/OUT Pass true to enable stroke adjustment, false to disable stroke adjustment.

Returns
void

PDEExtGStateSetTK

void PDEExtGStateSetTK(IN PDEExtGState pdeExtGState, IN ASBool bk)
PEWProcs.h:2052

Specifies whether text knockout is enabled in the graphics state. This corresponds to the / TK key in the ExtGState's dictionary.

Parameters
pdeExtGState: IN PDEExtGState

IN/OUT The extended graphics state object.

bk: IN ASBool

IN/OUT Pass true to enable text knockout, false to disable text knockout.

Returns
void

Structures(1)

PDEExtGState

typedef struct _t_PDEExtGState* PDEExtGState
PEExpT.h:345

A reference to an ExtGState resource used on a page in a PDF file. It specifies a PDEElement object's extended graphics state, which is part of its graphics state.

PDEFont

39 items

Functions(34)

PDEFontAddGlyphs

PDESpanSetP PDEFontAddGlyphs(IN PDEFont pdeFont, IN PDEGlyphRunP glyphRun, IN ASUns32 flags)
PEWProcs.h:2668

Adds glyphs to a PDEFont object for embedding a PDEFont. This is used by clients that use PDEFEdit calls to embed the font but create their own content stream. The glyphs added by this routine will be included in the font when PDEFontSubsetNow() is called. It is up to the client to ensure that the encoding used by the PDEFont matches the character codes used in the string arguments to the text operators in the content stream. This routine is used to specify which glyphs should be included in the font when embedded. Additionally, it specifies the mapping from the GlyphIDs to Unicode values. This mapping will be used to create the ToUnicode entry in the embedded font object. In the cases where the ToUnicode table cannot accurately reproduce the Unicode string in the PDEGlyphRun structure, this routine will return an array of spans that describe the contents of the ActualText spans that must be included in the content stream. Each span indicates a contiguous range of glyphs and a corresponding contiguous range of Unicode values that correspond to the glyphs. For example, the following ActualText span replace two glyphs with three Unicode values. /Span<</ActualText(U+vvvvU+xxxU+yyyy)>> BDC [Giii Gjjj] TJ EMC Note that the routine must be called with the PDEGlyphRuns in display order.

Parameters
pdeFont: IN PDEFont

The font for the element.

glyphRun: IN PDEGlyphRunP

A pointer to a PDEGlyphRun structure with Unicode data, GlyphIDs and their correspondence. Note that the xPosition and yPosition fields in the PDEGlyphDescription structure are ignored.

flags: IN ASUns32

Unused, reserved for later use.

Returns
PDESpanSetP

A pointer to a PDESpanSet . The span can be released with PDEReleaseSpan().

PDEFontCreate

PDEFont PDEFontCreate(IN PDEFontAttrsP attrsP, IN ASUns32 attrsSize, IN ASInt32 firstChar, IN ASInt32 lastChar, IN ASInt16 *widthsP, IN char **encoding, IN ASAtom encodingBaseName, IN ASStm fontStm, IN ASInt32 len1, IN ASInt32 len2, IN ASInt32 len3)
PEWProcs.h:839

Creates a new PDEFont from the specified parameters.

The PDEFont may be represented as an embedded font (a FontFile entry in the font descriptor of the PDF file). To create a PDEFont that is stored as an embedded font, the FontFile stream may be passed in fontStm, and the len1, len2, and len3 parameters contain the Length1, Length2, and Length3 values of the FontFile stream attributes dictionary. See the description of Embedded Font Programs in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.9, page 288. You can find this document on the web store of the International Standards Organization (ISO).

The caller must close fontStm with ASStmClose() after invoking PDEFontCreate().

Call PDERelease() to dispose of the returned font object when finished with it.

Parameters
attrsP: IN PDEFontAttrsP
attrsSize: IN ASUns32
firstChar: IN ASInt32
lastChar: IN ASInt32
widthsP: IN ASInt16 *
encoding: IN char **
encodingBaseName: IN ASAtom
fontStm: IN ASStm

The stream with font information.

len1: IN ASInt32

The length in bytes of the ASCII portion of the Type 1 font file after it has been decoded. For other font formats, such as TrueType or CFF, only len1 is used, and it is the size of the font.

len2: IN ASInt32

The length in bytes of the encrypted portion of the Type 1 font file after it has been decoded.

len3: IN ASInt32

The length in bytes of the portion of the Type 1 font file that contains the 512 zeros, plus the cleartomark operator, plus any following data.

Returns
PDEFont

The specified PDEFont.

PDEFontCreateFromSysFont

PDEFont PDEFontCreateFromSysFont(IN PDSysFont sysFont, IN ASUns32 flags)
PEWProcs.h:905

Gets a PDEFont corresponding to a font in the system. Call PDERelease() to dispose of the returned font object when finished with it. The PDEFontCreateFlags flags kPDEFontCreateEmbedded and kPDEFontWillSubset must both be set in order to subset a font. If you create a PDEFont that is a subset, call PDEFontSubsetNow() on this font afterwards. If you want to use WinAnsiEncoding on UNIX, do not use this method. Use PDEFontCreateFromSysFontWithParams() or PDEFontCreateFromSysFontAndEncoding() instead.

Parameters
sysFont: IN PDSysFont

A PDSysFont object referencing a system font.

flags: IN ASUns32

Indicates whether to embed the font and whether to subset the font. It must be one of PDEFontCreateFlags. If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags.

Returns
PDEFont

The PDEFont corresponding to sysFont.

PDEFontCreateFromSysFontAndEncoding

PDEFont PDEFontCreateFromSysFontAndEncoding(IN PDSysFont sysFont, IN PDSysEncoding sysEnc, IN ASAtom useThisBaseFont, IN ASUns32 createFlags)
PEWProcs.h:2145

Create a PDEFont from sysFont and sysEnc . If it fails, it raises an exception. User can call PDSysFontGetCreateFlags() to see if the combination of sysFont and sysEnc makes sense. Call PDERelease() to dispose of the returned PDEFont object when finished with it. If you want to use WinAnsiEncoding on UNIX, use this method or PDEFontCreateFromSysFontWithParams().

Parameters
sysFont: IN PDSysFont

A PDSysFont object referencing a system font.

sysEnc: IN PDSysEncoding

A PDSysEncoding object.

useThisBaseFont: IN ASAtom

The base font. An exception will be raised if the base font name passed is a subset name (XXXXXX+FontName) or an empty string.

createFlags: IN ASUns32

One of the PDEFontCreateFlags.

Returns
PDEFont

The newly created PDEFont object.

PDEFontCreateFromSysFontAndEncodingInCosDoc

PDEFont PDEFontCreateFromSysFontAndEncodingInCosDoc(IN PDSysFont sysFont, IN PDSysEncoding sysEnc, IN ASAtom useThisBaseFont, IN ASUns32 createFlags, IN CosDoc cosDoc)
PEWProcs.h:3045

Creates a font object like PDEFontCreateFromSysFontAndEncoding(), except that the client can specify the CosDoc in which the font is created. Create a PDEFont from sysFont and sysEnc . If it fails, it raises an exception. User can call PDSysFontGetCreateFlags() to see if the combination of sysFont and sysEnc makes sense. Call PDERelease() to dispose of the returned PDEFont object when finished with it. If you want to use WinAnsiEncoding on UNIX, use this method or PDEFontCreateFromSysFontWithParams().

Parameters
sysFont: IN PDSysFont

A PDSysFont object referencing a system font.

sysEnc: IN PDSysEncoding

A PDSysEncoding object.

useThisBaseFont: IN ASAtom

The base font. An exception will be raised if the base font name passed is a subset name (XXXXXX+FontName) or an empty string.

createFlags: IN ASUns32

One of the PDEFontCreateFlags.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEFont

The newly created PDEFont object.

PDEFontCreateFromSysFontEx

PDEFont PDEFontCreateFromSysFontEx(IN PDSysFont sysFont, IN ASUns32 flags, IN ASAtom snapshotName, IN ASFixed *mmDesignVec)
PEWProcs.h:1541

Creates a PDEFont corresponding to a font in the system. If the font is a Multiple Master font, mmDesignVector points to the design vector, whose length must equal the number of design axes of the font. Call PDERelease() to dispose of the returned font object when finished with it. The PDEFontCreateFlags flags kPDEFontCreateEmbedded and kPDEFontWillSubset must both be set in order to subset a font. If you create a PDEFont that is subsetted, call PDEFontSubsetNow() on this font afterwards.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font.

flags: IN ASUns32

IN/OUT Indicates whether to embed the font and whether to subset the font. It must be one of PDEFontCreateFlags. If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags.

snapshotName: IN ASAtom

IN/OUT The name to be associated with this particular instantiation of the PDEFont.

mmDesignVec: IN ASFixed *

IN/OUT A pointer to the Multiple Master font design vector.

Returns
PDEFont

The PDEFont corresponding to sysFont .

PDEFontCreateFromSysFontExInCosDoc

PDEFont PDEFontCreateFromSysFontExInCosDoc(IN PDSysFont sysFont, IN ASUns32 flags, IN ASAtom snapshotName, IN ASFixed *mmDesignVec, IN CosDoc cosDoc)
PEWProcs.h:2981

Creates a font object like PDEFontCreateFromSysFontEx(), except that the client can specify the CosDoc in which the font is created. If the font is a Multiple Master font, mmDesignVector points to the design vector, whose length must equal the number of design axes of the font. Call PDERelease() to dispose of the returned font object when finished with it. The PDEFontCreateFlags flags kPDEFontCreateEmbedded and kPDEFontWillSubset must both be set in order to subset a font. If you create a PDEFont that is subsetted, call PDEFontSubsetNow() on this font afterwards.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font.

flags: IN ASUns32

IN/OUT Indicates whether to embed the font and whether to subset the font. It must be one of PDEFontCreateFlags. If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags.

snapshotName: IN ASAtom

IN/OUT The name to be associated with this particular instantiation of the PDEFont.

mmDesignVec: IN ASFixed *

IN/OUT A pointer to the Multiple Master font design vector.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEFont

The PDEFont corresponding to sysFont .

PDEFontCreateFromSysFontInCosDoc

PDEFont PDEFontCreateFromSysFontInCosDoc(IN PDSysFont sysFont, IN ASUns32 flags, IN CosDoc cosDoc)
PEWProcs.h:2934

Creates a font object like PDEFontCreateFromSysFont(), except that the client can specify the CosDoc in which the font is created. Call PDERelease() to dispose of the returned font object when finished with it. The PDEFontCreateFlags flags kPDEFontCreateEmbedded and kPDEFontWillSubset must both be set in order to subset a font. If you create a PDEFont that is a subset, call PDEFontSubsetNow() on this font afterwards. If you want to use WinAnsiEncoding on UNIX, do not use this method. Use PDEFontCreateFromSysFontWithParams() or PDEFontCreateFromSysFontAndEncoding() instead.

Parameters
sysFont: IN PDSysFont

A PDSysFont object referencing a system font.

flags: IN ASUns32

Indicates whether to embed the font and whether to subset the font. It must be one of PDEFontCreateFlags. If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEFont

The PDEFont corresponding to sysFont .

PDEFontCreateFromSysFontWithParams

PDEFont PDEFontCreateFromSysFontWithParams(IN PDSysFont sysFont, IN PDEFontCreateFromSysFontParams params)
PEWProcs.h:2022

Used to obtain a PDEFont corresponding to a font in the system. Call PDERelease() to dispose of the returned PDEFont object when finished with it. If you want to use WinAnsiEncoding on UNIX, use this method or PDEFontCreateFromSysFontAndEncoding() instead.

Parameters
sysFont: IN PDSysFont

The system font.

params: IN PDEFontCreateFromSysFontParams

The parameters structure.

Returns
PDEFont

The newly created PDEFont object.

PDEFontCreateInCosDoc

PDEFont PDEFontCreateInCosDoc(IN PDEFontAttrsP attrsP, IN ASUns32 attrsSize, IN ASInt32 firstChar, IN ASInt32 lastChar, IN ASInt16 *widthsP, IN char **encoding, IN ASAtom encodingBaseName, IN ASStm fontStm, IN ASInt32 len1, IN ASInt32 len2, IN ASInt32 len3, IN CosDoc cosDoc)
PEWProcs.h:2892

Creates a font object like PDEFontCreate(), except that the client can specify the CosDoc in which the font is created. The PDEFont may be represented as an embedded font (a FontFile entry in the font descriptor of the PDF file). To create a PDEFont that is stored as an embedded font, the FontFile stream may be passed in fontStm , and the len1 , len2 , and len3 parameters contain the Length1 , Length2 , and Length3 values of the FontFile stream attributes dictionary. See the description of Embedded Font Programs in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.9, page 288. You can find this document on the web store of the International Standards Organization (ISO). The caller must close fontStm with ASStmClose() after invoking PDEFontCreate(). Call PDERelease() to dispose of the returned font object when finished with it.

Parameters
attrsP: IN PDEFontAttrsP

A pointer to a PDEFontAttrs structure for the font attributes.

attrsSize: IN ASUns32

The size of the attrsP buffer in bytes.

firstChar: IN ASInt32

The first character index for the widths array, widthsP .

lastChar: IN ASInt32

The last character index for the widths array, widthsP .

widthsP: IN ASInt16 *

A pointer to the widths array.

encoding: IN char **

An array of 256 pointers to glyph names specifying the custom encoding. If any pointer is NULL , no encoding information is written for that entry.

encodingBaseName: IN ASAtom

The encoding base name if the encoding is a custom encoding. If the encoding is NULL , encodingBaseName is used as the value of the encoding, and must be one of WinAnsiEncoding , MacRomanEncoding , or MacExpertEncoding . If no encoding value is desired, use ASAtomNull.

fontStm: IN ASStm

The stream with font information.

len1: IN ASInt32

The length in bytes of the ASCII portion of the Type 1 font file after it has been decoded. For other font formats, such as TrueType or CFF, only len1 is used, and it is the size of the font.

len2: IN ASInt32

The length in bytes of the encrypted portion of the Type 1 font file after it has been decoded.

len3: IN ASInt32

The length in bytes of the portion of the Type 1 font file that contains the 512 zeros, plus the cleartomark operator, plus any following data.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEFont

The specified PDEFont.

PDEFontCreateToUnicodeNow

PEWProcs.h:2199

This function creates the / ToUnicode table. The user can check the return value of PDEFontGetCreateNeedFlags() to see if calling PDEFontCreateToUnicodeNow() is needed.

Parameters
font: IN PDEFont

IN/OUT An object of type PDEFont.

cosDoc: IN CosDoc

IN/OUT The container document.

Returns
void

PDEFontCreateWidthsNow

PEWProcs.h:2186

This function creates width entries for font . User can check the return value of PDEFontGetCreateNeedFlags() to see if calling PDEFontCreateWidthsNow() is needed.

Parameters
font: IN PDEFont

IN/OUT The font for which to create width entries.

cosDoc: IN CosDoc

IN/OUT The container document.

Returns
void

PDEFontCreateWithParams

PDEFont PDEFontCreateWithParams(IN PDEFontCreateParams params)
PEWProcs.h:1407

Creates a new PDEFont from params.

The PDEFont may be represented as an embedded font (a FontFile value in PDF). To create a PDEFont that will be stored as an embedded font, the FontFile stream may be passed as fontStm, and the len1, len2, and len3 parameters contain the Length1, Length2, and Length3 values of the FontFile. The caller must close the fontStm after calling this method. This method supports multi-byte fonts.

This method extends PDEFontCreate() to support multi-byte fonts.

Call PDERelease() to dispose of the returned font object when finished with it.

Parameters
params: IN PDEFontCreateParams
Returns

PDEFontCreateWithParamsInCosDoc

PDEFont PDEFontCreateWithParamsInCosDoc(IN PDEFontCreateParams params, IN CosDoc cosDoc)
PEWProcs.h:3020

Creates a font object like PDEFontCreateWithParams(), except that the client can specify the CosDoc in which the font is created. Creates a new PDEFont from params . The PDEFont may be represented as an embedded font (a FontFile value in PDF). To create a PDEFont that will be stored as an embedded font, the FontFile stream may be passed as fontStm , and the len1 , len2 , and len3 parameters contain the Length1 , Length2 , and Length3 values of the FontFile. The caller must close the fontStm after calling this method. This method supports multi-byte fonts. This method extends PDEFontCreate() to support multi-byte fonts. Call PDERelease() to dispose of the returned font object when finished with it.

Parameters
params: IN PDEFontCreateParams

IN/OUT A pointer to a structure containing all font parameters necessary to fully define a font.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of resource. It may be NULL .

Returns
PDEFont

A PDEFont object of the font described by the parameters.

PDEFontGetAttrs

void PDEFontGetAttrs(IN PDEFont font, OUT PDEFontAttrsP attrsP, IN ASUns32 attrsSize)
PERProcs.h:1039

Gets the attributes for a font object. PDEFontGetAttrs() cannot fill in the cantEmbed and protection fields. PDSysFontAttrs() can return this information to you for system fonts. PDEFontGetAttrs() fills in the fontBBox portion of the PDEFontAttrs as ASInt16 objects, even though the member says it is an ASFixedRect . Make sure to properly convert those values using ASInt16ToFixed() so that you get the proper ASFixedRect associated with that font.

Parameters
font: IN PDEFont

IN/OUT A PDEFont whose attributes are found.

attrsP: OUT PDEFontAttrsP

IN/OUT (Filled by the method) A pointer to a PDEFontAttrs structure for the font attributes.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

Returns
void

PDEFontGetCreateNeedFlags

PEWProcs.h:2157

This function returns flags indicating what needs to be done to make PDEFont complete. kPDEFontCreateNeedWidths can be cleared by PDEFontCreateWidthsNow(). kPDEFontCreateNeedToUnicode can be cleared by PDEFontCreateToUnicodeNow(). kPDEFontCreateNeedEmbed can be cleared by PDEFontEmbedNow().

Parameters
font: IN PDEFont

The font object.

Returns
ASUns32

A value corresponding to PDEFontCreateNeedFlags().

PDEFontGetNumCodeBytes

PERProcs.h:1563

Gets the number of bytes comprising the next code in a string of single or multi-byte character codes.

Parameters
font: IN PDEFont

IN/OUT A PDEFont object returned from one of the PDEFontCreate methods.

text: IN ASUns8 *

IN/OUT A pointer to a string of characters.

len: IN ASInt32

IN/OUT The length, in bytes, of the string of characters, starting with the character pointed to by text.

Returns
ASInt16

The number of bytes in the next character code pointed to by text.

PDEFontGetOneByteEncoding

PERProcs.h:1788

Gets an array of delta encodings for the given one byte PDEFont. For encodingDelta, see the description of encoding in the ISO 32000 document, 1.7 or 2.0. You can find this document on the web store of the International Standards Organization. The array must be allocated to hold 256 entries.

Parameters
font: IN PDEFont

IN/OUT A PDEFont object returned from one of the PDEFontCreate methods.

encodingDelta: OUT ASAtom *

IN/OUT (Filled by the method) A pointer to an ASAtom array that is filled with the delta encodings for font. Each entry is the ASAtom for a glyph name that differs from the base encoding. For more information about font encodings see the description of Base Encoding in the Character Encoding section of the ISO 32000-1:2008, Document Management- Portable Document Format-Part 1: PDF 1.7, section 9.6.6, page 262.

Returns
ASBool

true if encodingDelta is filled, false otherwise.

PDEFontGetWidths

void PDEFontGetWidths(IN PDEFont font, OUT ASInt16 *widthsP)
PERProcs.h:1058

Gets the widths for a font object.

Parameters
font: IN PDEFont

IN/OUT A PDEFont whose widths are found.

widthsP: OUT ASInt16 *

IN/OUT (Filled by the method) A pointer to the widths array. widthsP must have room for 256 values. The widths are returned in character space (1000 EM units). An EM is a typographic unit of measurement equal to the size of a font. To convert to text space, divide the value returned by 1000 . To convert to user space, multiply the text space value by the font size.

Returns
void

PDEFontGetWidthsNow

PEWProcs.h:1631

Gets a Type0 font's width information for only those characters used in the file. Call this routine when the font was created with the kPDEFontDeferWidths flag but without the kPDEFontCreateEmbedded flag (if the font is to be embedded, call PDEFontSubsetNow(), which also gets the width info).

Parameters
font: IN PDEFont

The font whose widths are found.

cosDoc: IN CosDoc

The container document.

Returns
void

PDEFontSetSysFont

void PDEFontSetSysFont(IN PDEFont pdeFont, IN PDSysFont sysFont)
PEWProcs.h:2347

Sets the system font object to be used with a font object that does not currently have a system font associated with it.

Parameters
pdeFont: IN PDEFont

A PDEFont whose system font is set.

sysFont: IN PDSysFont

The new system font object.

Returns
void

PDEFontSubsetNow

void PDEFontSubsetNow(IN PDEFont font, IN CosDoc cosDoc)
PEWProcs.h:1336

Subsets a given PDEFont in a CosDoc. If you created font with PDEFontCreateFromSysFont(), you must have set both the kPDEFontCreateEmbedded and kPDEFontWillSubset set in the flags parameter, to be able to subset the font. This method does not change the reference count.

Parameters
font: IN PDEFont

IN/OUT The PDEFont to subset.

cosDoc: IN CosDoc

IN/OUT The CosDoc whose font is subsetted.

Returns
void

PDEFontSumWidths

PERProcs.h:1544

Gets the sum of the widths of len characters from a string of single or multi-byte characters.

Parameters
font: IN PDEFont

A PDEFont object returned from one of the PDEFontCreate methods.

text: IN ASUns8 *

A pointer to a string of characters.

len: IN ASInt32

The length of string in bytes.

Returns
ASInt32

The width of the text string in EM space. (In EM space, the width of 'M' is about 1000 EM units).

PDEFontTranslateGlyphIdsToUnicode

PEWProcs.h:2040

Translates a string to Unicode values. The PDEFont must have a / ToUnicode table.

Parameters
font: IN PDEFont

IN/OUT The font.

text: IN ASUns8 *

IN/OUT The string to convert.

textLen: IN ASUns32

IN/OUT The length of text in bytes.

unicodeStr: OUT ASUns8 *

IN/OUT (Filled by the method) A buffer to hold the translated string.

size: IN ASUns32

IN/OUT The size of the unicodeStr buffer.

Returns
ASUns32

0 if the string was successfully translated. If unicodeStr is too small for the translated string, it returns the number of bytes required.

Structures(1)

Enums(2)

PDEFontCreateFlags

PEExpT.h:1950

Flags for PDEFontCreateFromSysFont() . If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags.

Values
kPDEFontCreateEmbedded
—

Embed the font. Create an embedded font. By itself, this will not subset the font.

kPDEFontWillSubset
—

Subset the font. If you want to subset a font, set both the kPDEFontCreateEmbedded and kPDEFontWillSubset flags. You must call PDEFontSubsetNow() to actually subset the font. Both embedding and subsetting a font creates a CFF font.

kPDEFontDoNotEmbed
—

Do not embed the font. You cannot set both this and the kPDEFontWillSubset flags. Nor can you set kPDEFontCreateEmbedded .

kPDEFontEncodeByGID
—

Create a CIDFont with identity (GID) encoding.

kPDEFontDeferWidths
—

Wait to get the widths until later (this affects Type0 fonts only).

kPDEFontCreateSubset
—
kPDEFontCreateGIDOverride
—

PDFLib will convert cp to gid with identity embedded.

kPDEFontCreateToUnicode
—

Create a ToUnicode CMap.

kPDEFontCreateAllWidths
—

Supply the entire widths table (this affects Type0 fonts only).

kPDEFontCreateEmbedOpenType
—

Embed an OpenType style font subset, if appropriate.

kPDEFontCreateReserved1
—

Reserved for internal usage

kPDEFontCreateFullCIDSet
—

Create CIDSet entry from all CIDs present in subsetted Type0 CID Fonts containing glyph descriptions based on identity encoded TrueType fonts (subtype CIDFontType2). Subsetted identity encoded Type0 fonts can have more glyphs than asked for to avoid glyph renumbering. Default behavior is to only include CIDs used in PDF page content stream in CIDset

kPDEFontThrowIfToUnicodeUsesPUA
—

If kPDEFontThrowIfToUnicodeUsesPUA flag is passed along with kPDEFontCreateToUnicode and kPDEFontCreateSubset, throw error in PDEFont embedding APIs if the created ToUnicode table contains Private Use Area (Range: E000-F8FF in plane 0 and Supplemental Private Use Area A & B) Unicode values

kPDEFontInvisibleRenderingMode
—

Reserved for internal usage - This flag is passed if PDEFont is used with Text rendering mode 3(Invisible)

While converting to PDFXxx and PDFAxx if fetched fontfile stream data from Cooltype is empty (NULL) , then with this flag enabled entire fontfile stream data from input file is copied to embedded font in output file

PDEFontCreateNeedFlags

PEExpT.h:2012

Flags for PDEFontGetCreateNeedFlags().

Values
kPDEFontCreateNeedWidths
—

It is necessary to to create the width.

kPDEFontCreateNeedToUnicode
—

It is necessary to to create the ToUnicode stream.

kPDEFontCreateNeedEmbed
—

It is necessary to to embed it.

Definitions(2)

kPDEFontNoEmbedding

PEExpT.h:2025
Value:0x00000001

Flags for protection of PDEFontAttrs : embedding is not allowed.

PDEForm

18 items

Functions(17)

PDEFormCreateClone

PEWProcs.h:2570

Creates a new form from an existing form object. Creates a copy of the PDEForm, including the underlying CosStream. Call PDERelease() to dispose of the returned PDEForm object when finished with it.

Parameters
form: IN PDEForm

The form object from which a new PDEForm is created.

Returns
PDEForm

The newly created form object.

PDEFormCreateFromCosObj

PDEForm PDEFormCreateFromCosObj(IN const CosObj *xObjectP, IN const CosObj *resourcesP, IN ASFixedMatrixP matrixP)
PEWProcs.h:735

Superseded by PDEFormCreateFromCosObjEx() in Acrobat 10.0. Creates a new form from an existing Cos object. Call PDERelease() to dispose of the returned form object when finished with it.

Parameters
xObjectP: IN const CosObj *

The Cos object from which a PDEForm is created.

resourcesP: IN const CosObj *

The xObjectP parameter's Resources dictionary. If you do not pass in a Resource object, subsequent calls to PDPageAcquirePDEContent() will fail (after the file is saved).

matrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the transformation matrix to use for the form.

Returns
PDEForm

The newly created form object.

PDEFormCreateFromCosObjEx

PDEForm PDEFormCreateFromCosObjEx(IN const CosObj *xObjectP, IN const CosObj *resourcesP, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3658

Creates a new form from an existing Cos object. Supersedes PDEFormCreateFromCosObj() in Acrobat 10.0. Call PDERelease() to dispose of the returned form object when finished with it.

Parameters
xObjectP: IN const CosObj *

The Cos object from which a PDEForm is created.

resourcesP: IN const CosObj *

The xObjectP parameter's Resources dictionary. If you do not pass in a Resource object, subsequent calls to PDPageAcquirePDEContent() will fail (after the file is saved).

matrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the transformation matrix to use for the form.

Returns
PDEForm

The newly created form object.

PDEFormGetBBox

void PDEFormGetBBox(IN PDEForm form, OUT ASFixedRectP bboxP)
PEWProcs.h:2768

Gets the bounding box for a PDEform. The result is the concatenation of the CTM and the Cos level form matrix applied on cos level bounding box. The returned bounding box is guaranteed to encompass the PDEForm, but is not guaranteed to be the smallest box that could contain the form object. Note: For other elements, PDEElementGetBBox() would return the correct bounding box values.

Parameters
form: IN PDEForm

The PDEForm for which the bounding box is required.

bboxP: OUT ASFixedRectP

The resulting bounding box.

Returns
void

PDEFormGetContent

PEWProcs.h:749

Gets a PDEContent object for a form. Unlike other GetContent methods, this method does increment the reference count of the returned PDEContent. Call PDERelease() to dispose of the returned PDEContent object when finished with it.

Parameters
form: IN PDEForm

The form whose content is obtained.

Returns
PDEContent

The content for form .

PDEFormGetMatrix

void PDEFormGetMatrix(IN PDEForm form, OUT ASFixedMatrixP matrixP)
PEWProcs.h:2753

Superseded by PDEFormGetMatrixEx() in Acrobat 10.0. Gets the matrix for a PDEform. The result is a concatenation of the CTM and the Cos level form matrix, resulting in the transformation from the form space to the device space. For the other elements, PDEElementGetMatrix() would give correct results.

Parameters
form: IN PDEForm

The form for which the matrix is required.

matrixP: OUT ASFixedMatrixP

The resultant matrix.

Returns
void

PDEFormGetMatrixEx

void PDEFormGetMatrixEx(IN PDEForm form, OUT ASDoubleMatrixP matrixP)
PEWProcs.h:3226

Gets the matrix for a PDEform. Supersedes PDEFormGetMatrix() in Acrobat 10.0. The result is a concatenation of the CTM and the Cos level form matrix, resulting in the transformation from the form space to the device space. For the other elements, PDEElementGetMatrixEx() would give correct results.

Parameters
form: IN PDEForm

The form for which the matrix is required.

matrixP: OUT ASDoubleMatrixP

The resultant matrix.

Returns
void

PDEFormSetXGroup

void PDEFormSetXGroup(IN PDEForm pdeForm, IN PDEXGroup pdeXGroup)
PEWProcs.h:1814

Sets the transparency group dictionary of the form XObject.

Parameters
pdeForm: IN PDEForm

IN/OUT The font XObject.

pdeXGroup: IN PDEXGroup

IN/OUT The transparency dictionary.

Returns
void

Structures(1)

PDEForm

typedef struct _t_PDEForm* PDEForm
PEExpT.h:202

A PDEElement that corresponds to an instance of an XObject Form on a page (or another containing stream such as another XObject Form or annotation form). The context associated with this instance includes the actual CosObj stream that represents the XObject Form and the initial conditions of the graphics state. The latter consists of the transformation matrix, initial color values, and so forth. It is possible to have two PDEForm objects that refer to the same XObject Form. The forms will exist at different places on the same page, depending on the transformation matrix. They may also have different colors or line stroking parameters. In the case of a transparency group, the opacity is specified in the gstate . Within a PDEForm, each PDEElement has its own gstate (or is a container, place, or group object). These gstates are independent of the parent PDEForm gstate . PDEForm elements within the PDEForm may have their own opacity. A PDEContent may be obtained from a PDEForm to edit the form's display list.

PDEGraphicFont

1 items

Structures(1)

PDEGroup

4 items

Functions(3)

PDEGroupSetContent

void PDEGroupSetContent(IN PDEGroup pdeGroup, IN PDEContent pdeContent)
PEWProcs.h:1496

Sets the PDEContent for a PDEGroup. The existing PDEContent is released by this method. This method increments the reference count of pdeContent .

Parameters
pdeGroup: IN PDEGroup

IN/OUT A container object.

pdeContent: IN PDEContent

IN/OUT The content to set for pdeGroup .

Returns
void

Structures(1)

PDEGroup

typedef struct _t_PDEGroup* PDEGroup
PEExpT.h:257

An in-memory representation of objects in a PDEContent object. It has no state and is not represented in any way in a PDF content stream (that is, PDEContent). When used in a PDEClip, this object is used to associate PDEText objects into a single clipping object.

PDEImage

37 items

Functions(32)

PDEImageAcquireImageJPX

PERProcs.h:2675

Acquires the PDEImageJPX resource of the PDEImage content element when the image filter type is "JPXDecode" , or 0 if it is not. Call PDERelease() to dispose of the PDEImageJPX when finished with it.

Parameters
image: IN PDEImage

IN/OUT The PDEImage object.

Returns
PDEImageJPX

a PDEImageJPX resource object.

PDEImageCreate

PDEImage PDEImageCreate(IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize, IN ASFixedMatrixP matrixP, IN ASUns32 flags, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP, IN PDEFilterArrayP filtersP, IN ASStm dataStm, IN ASUns8 *data, IN ASUns32 encodedLen)
PEWProcs.h:591

Superseded by PDEImageCreateEx() in Acrobat 10.0. Creates an image object. The image data may be specified as a stream or as a buffer. If data is non- NULL , dataStm is ignored. See PDEImageSetDataStm() for information on handling the stream. The caller must dispose of dataStm after calling this method. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
attrsP: IN PDEImageAttrsP

IN/OUT A pointer to a PDEImageAttrs object with attributes of the image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the transformation matrix to use for the image.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, and the data is provided directly (not as a stream), then encodedLen must specify the length of data.

colorSpace: IN PDEColorSpace

IN/OUT The color space of the image. When the image is an image mask, colorSpace is the color space of the colorValueP argument.

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure that specifies which filters to use in encoding the contents; it may be NULL . Filters will be used to encode the data in the order in which they are specified in the array.

dataStm: IN ASStm

IN/OUT The stream holding the image data.

data: IN ASUns8 *

IN/OUT The image data. If data is non- NULL , dataStm is ignored. If there is a great deal of data, as for a large image, it is recommended you use the dataStm parameter for the image data or use the PDEImageCreateFromCosObj() method.

encodedLen: IN ASUns32

IN/OUT The encoded length of data in bytes.

Returns
PDEImage

The image.

PDEImageCreateEx

PDEImage PDEImageCreateEx(IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize, IN ASDoubleMatrixP matrixP, IN ASUns32 flags, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP, IN PDEFilterArrayP filtersP, IN ASStm dataStm, IN ASUns8 *data, IN ASUns64 encodedLen)
PEWProcs.h:3389

Creates an image object. Supersedes PDEImageCreate() in Acrobat 10.0. The image data may be specified as a stream or as a buffer. If dataStm is non- NULL , data is ignored. See PDEImageSetDataStm() for information on handling the stream. The caller must dispose of dataStm after calling this method. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
attrsP: IN PDEImageAttrsP

IN/OUT A pointer to a PDEImageAttrs object with attributes of the image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

matrixP: IN ASDoubleMatrixP

IN/OUT A pointer to an ASDoubleMatrix that holds the transformation matrix to use for the image.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, and the data is provided directly (not as a stream), then encodedLen must specify the length of data.

colorSpace: IN PDEColorSpace

IN/OUT The color space of the image. When the image is an image mask, colorSpace is the color space of the colorValueP argument.

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure that specifies which filters to use in encoding the contents; it may be NULL . Filters will be used to encode the data in the order in which they are specified in the array.

dataStm: IN ASStm

IN/OUT The stream holding the image data.

data: IN ASUns8 *

IN/OUT The image data. If dataStm is non- NULL , data is ignored. If there is a great deal of data, as for a large image, it is recommended you use the dataStm parameter for the image data or use the PDEImageCreateFromCosObjEx() method.

encodedLen: IN ASUns64

IN/OUT The encoded length of data in bytes.

Returns
PDEImage

The image.

PDEImageCreateFromCosObj

PDEImage PDEImageCreateFromCosObj(IN const CosObj *imageObjP, IN ASFixedMatrixP matrixP, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP)
PEWProcs.h:621

Superseded by PDEImageCreateFromCosObjEx() in Acrobat 10.0. Creates an image object from a Cos object. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
imageObjP: IN const CosObj *

IN/OUT The Cos object for the image.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the transformation matrix to use for the image.

colorSpace: IN PDEColorSpace

IN/OUT The color space used for the image, if the image is an image mask; otherwise, set it to NULL .

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

Returns
PDEImage

An image corresponding to the Cos object.

PDEImageCreateFromCosObjEx

PDEImage PDEImageCreateFromCosObjEx(IN const CosObj *imageObjP, IN ASDoubleMatrixP matrixP, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP)
PEWProcs.h:3457

Creates an image object from a Cos object. Supersedes PDEImageCreateFromCosObj() in Acrobat 10.0. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
imageObjP: IN const CosObj *

IN/OUT The Cos object for the image.

matrixP: IN ASDoubleMatrixP

IN/OUT A pointer to an ASDoubleMatrix that holds the transformation matrix to use for the image.

colorSpace: IN PDEColorSpace

IN/OUT The color space used for the image, if the image is an image mask; otherwise, set it to NULL .

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

Returns
PDEImage

An image corresponding to the Cos object.

PDEImageCreateInCosDoc

PDEImage PDEImageCreateInCosDoc(IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize, IN ASFixedMatrixP matrixP, IN ASUns32 flags, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP, IN PDEFilterArrayP filtersP, IN ASStm dataStm, IN ASUns8 *data, IN ASUns32 encodedLen, IN CosDoc cosDoc)
PEWProcs.h:2826

Superseded by PDEImageCreateInCosDocEx() in Acrobat 10.0. Creates an image object like PDEImageCreate(), except that the client can specify the CosDoc in which the image is created. The image data may be specified as a stream or as a buffer. If data is non- NULL , dataStm is ignored. See PDEImageSetDataStm() for information on handling the stream. The caller must dispose of dataStm after calling this method. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
attrsP: IN PDEImageAttrsP

IN/OUT A pointer to a PDEImageAttrs object with attributes of the image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the transformation matrix to use for the image.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, and the data is provided directly (not as a stream), then encodedLen must specify the length of data.

colorSpace: IN PDEColorSpace

IN/OUT The color space of the image. When the image is an image mask, colorSpace is the color space of the colorValueP argument.

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure that specifies which filters to use in encoding the contents; it may be NULL . Filters will be used to encode the data in the order in which they are specified in the array.

dataStm: IN ASStm

IN/OUT The stream holding the image data.

data: IN ASUns8 *

IN/OUT The image data. If data is non- NULL , dataStm is ignored. If there is a great deal of data, as for a large image, it is recommended you use the dataStm parameter for the image data or use the PDEImageCreateFromCosObj() method.

encodedLen: IN ASUns32

IN/OUT The encoded length of data in bytes.

cosDoc: IN CosDoc

IN/OUT Document in which to put Cos representation of resource. May be NULL.

Returns
PDEImage

The image.

PDEImageCreateInCosDoc64

PDEImage PDEImageCreateInCosDoc64(IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize, IN ASFixedMatrixP matrixP, IN ASUns32 flags, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP, IN PDEFilterArrayP filtersP, IN ASStm dataStm, IN ASUns8 *data, IN ASUns64 encodedLen, IN CosDoc cosDoc)
PEWProcs.h:3189

Superseded by PDEImageCreateInCosDocEx() in Acrobat 10.0. Creates an image object like PDEImageCreateInCosDoc(), except that the client can create an image with a large amount of data. The image data may be specified as a stream or as a buffer. If data is non- NULL , dataStm is ignored. See PDEImageSetDataStm() for information on handling the stream. The caller must dispose of dataStm after calling this method. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
attrsP: IN PDEImageAttrsP

IN/OUT A pointer to a PDEImageAttrs object with attributes of the image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the transformation matrix to use for the image.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, and the data is provided directly (not as a stream), then encodedLen must specify the length of data.

colorSpace: IN PDEColorSpace

IN/OUT The color space of the image. When the image is an image mask, colorSpace is the color space of the colorValueP argument.

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure that specifies which filters to use in encoding the contents; it may be NULL . Filters will be used to encode the data in the order in which they are specified in the array.

dataStm: IN ASStm

IN/OUT The stream holding the image data.

data: IN ASUns8 *

IN/OUT The image data. If data is non- NULL , dataStm is ignored. If there is a great deal of data, as for a large image, it is recommended you use the dataStm parameter for the image data or use the PDEImageCreateFromCosObj() method.

encodedLen: IN ASUns64

IN/OUT The encoded length of data in bytes.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of the resource. It may be NULL .

Returns
PDEImage

The image.

PDEImageCreateInCosDocEx

PDEImage PDEImageCreateInCosDocEx(IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize, IN ASDoubleMatrixP matrixP, IN ASUns32 flags, IN PDEColorSpace colorSpace, IN PDEColorValueP colorValueP, IN PDEFilterArrayP filtersP, IN ASStm dataStm, IN ASUns8 *data, IN ASUns64 encodedLen, IN CosDoc cosDoc)
PEWProcs.h:3334

Creates an image object like PDEImageCreateInCosDoc(), except that the client can create an image with a large amount of data, and using a double precision transformation matrix. Supersedes PDEImageCreateInCosDoc() and PDEImageCreateInCosDoc64() in Acrobat 10.0. The image data may be specified as a stream or as a buffer. If dataStm is non- NULL , data is ignored. See PDEImageSetDataStm() for information on handling the stream. The caller must dispose of dataStm after calling this method. Call PDERelease() to dispose of the returned image object when finished with it.

Parameters
attrsP: IN PDEImageAttrsP

IN/OUT A pointer to a PDEImageAttrs object with attributes of the image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

matrixP: IN ASDoubleMatrixP

IN/OUT A pointer to an ASDoubleMatrix that holds the transformation matrix to use for the image.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, and the data is provided directly (not as a stream), then encodedLen must specify the length of data.

colorSpace: IN PDEColorSpace

IN/OUT The color space of the image. When the image is an image mask, colorSpace is the color space of the colorValueP argument.

colorValueP: IN PDEColorValueP

IN/OUT A pointer to a PDEColorValue structure. If the image is an image mask, colorValueP must be provided.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure that specifies which filters to use in encoding the contents; it may be NULL . Filters will be used to encode the data in the order in which they are specified in the array.

dataStm: IN ASStm

IN/OUT The stream holding the image data.

data: IN ASUns8 *

IN/OUT The image data. If dataStm is non- NULL , data is ignored. If there is a great deal of data, as for a large image, it is recommended you use the dataStm parameter for the image data or use the PDEImageCreateFromCosObjEx() method.

encodedLen: IN ASUns64

IN/OUT The encoded length of data in bytes.

cosDoc: IN CosDoc

IN/OUT The document in which to put the Cos representation of the resource. It may be NULL .

Returns
PDEImage

The image.

PDEImageDataIsEncoded

PERProcs.h:818

Determines if image data is encoded or not. It is used only for inline images; it is not relevant to XObject images.

It always returns false for XObject images; XObject image data can be obtained from PDEImageGetData() or PDEImageGetDataStm(), either encoded or decoded.

If an inline image is obtained via PDEContentCreateFromCosObj() or related methods, the inline image data is always decoded. That is, if PDFEdit parses the stream, the data is always decoded. Only if PDEImageCreate() is used to explicitly create a new image using encoded data does PDEImageDataIsEncoded() return true.

Parameters
image: IN PDEImage
encodedLenP: OUT ASUns32 *
Returns
See Also

PDEImageGetAttrs

void PDEImageGetAttrs(IN PDEImage image, IN PDEImageAttrsP attrsP, IN ASUns32 attrsSize)
PERProcs.h:758

Gets the attributes for an image.

Parameters
image: IN PDEImage

IN/OUT The image whose attributes are obtained.

attrsP: IN PDEImageAttrsP

IN/OUT (Filled by the method) A pointer to a PDEImageAttrs structure with attributes of image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

Returns
void

PDEImageGetData

void PDEImageGetData(IN PDEImage image, IN ASUns32 flags, IN ASUns8 *buffer)
PERProcs.h:850

Gets an image's data. If the image is an XObject image, data is always returned as decoded data. See the note about inline images under PDEImageDataIsEncoded().

Parameters
image: IN PDEImage

IN/OUT The image whose data is obtained.

flags: IN ASUns32

IN/OUT Unused - must be zero.

buffer: IN ASUns8 *

IN/OUT The image data. If the data is decoded, buffer must be large enough to contain the number of bytes specified in the PDEImageAttrs structure obtained by PDEImageGetAttrs(). If the data is encoded, buffer must be large enough to contain the number of bytes in the encodedLenP parameter obtained by PDEImageDataIsEncoded().

Returns
void

PDEImageGetDataLen64

PEWProcs.h:3128

Gets the length of data for an image.

Parameters
image: IN PDEImage

IN/OUT The image whose data length is obtained.

Returns
ASInt64

The number of bytes of image data, specified by the width, height, bits per component, and color space of the image. Clients should switch to this routine. PDEImageGetDataLen() will raise an error if it encounters an image with a length that is larger than 2^31 - 1 .

PDEImageGetDataStm

PERProcs.h:871

Gets a data stream for an image. It may only be called for XObject images. The caller must dispose of the returned ASStm by calling ASStmClose.

Parameters
image: IN PDEImage

IN/OUT The image whose data stream is obtained.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, data is returned in encoded form. Otherwise, data is decoded.

Returns
ASStm

The stream for the image.

PDEImageGetDecodeArray

PERProcs.h:1850

Gets the decode array from the attributes of the image. This array specifies the parameters used with the array of filters used to decode the image. This should be called first with a NULL decode to obtain the number of elements that may be returned so that a properly sized array can be allocated for a subsequent call. There are two decode entries per colorant in normal use.

Parameters
image: IN PDEImage

The image whose decode array is obtained.

decode: OUT ASFixed *

(Filled by the method) A pointer to the decode array. If it is NULL , the number of decode elements required is returned.

decodeSize: IN ASUns32

The number of elements in decode .

Returns
ASUns32

The number of elements in the decode array.

PDEImageGetFilterArray

ASInt32 PDEImageGetFilterArray(IN PDEImage image, OUT PDEFilterArrayP filtersP)
PERProcs.h:904

Gets the filter array for an image.

Parameters
image: IN PDEImage

IN/OUT The image whose filter array is obtained.

filtersP: OUT PDEFilterArrayP

IN/OUT (Filled by the method) A pointer to PDEFilterArray structure to fill with the current filter array for the image. filtersP must be large enough to contain all of the elements. It may be NULL to obtain the number of filter elements.

Returns
ASInt32

The number of filter elements.

PDEImageGetType

PERProcs.h:2651

Returns the type of image as "FlateDecode" , "JPXDecode" , or "Unknown" when the image filter is not one of these types.

Parameters
image: IN PDEImage

IN/OUT The PDEImage object.

Returns
ASAtom

See above.

PDEImageSetColorValue

void PDEImageSetColorValue(IN PDEImage image, IN PDEColorValueP color)
PERProcs.h:3379

Sets an image's Color Value. This call is valid only for a PDEImage which is an Image Mask

Parameters
image: IN PDEImage

IN/OUT The image whose data is set.

color: IN PDEColorValueP
Returns
void

PDEImageSetData

void PDEImageSetData(IN PDEImage image, IN ASUns32 flags, IN ASUns8 *buffer, IN ASUns32 encodedLen)
PEWProcs.h:507

Sets data for an image.

Parameters
image: IN PDEImage

IN/OUT The image whose data is set.

flags: IN ASUns32

IN/OUT A set of PDEImageDataFlags flags. If kPDEImageEncodedData is set, the data must be encoded for the current filters, and encodedLen is the length of the encoded data. If the kPDEImageEncodedData flag is not set, data is not encoded and encodedLen is the size of the decoded data.

buffer: IN ASUns8 *

IN/OUT The image data.

encodedLen: IN ASUns32

IN/OUT The length of the encoded data.

Returns
void

PDEImageSetDataStm

void PDEImageSetDataStm(IN PDEImage image, IN ASUns32 flags, IN PDEFilterArrayP filtersP, IN ASStm stm)
PEWProcs.h:538

Sets a data stream for an image. It can only be used for XObject images. The caller must dispose of the stream by calling ASStmClose().

Parameters
image: IN PDEImage

IN/OUT The image whose data stream is set.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, the stream must be encoded.

filtersP: IN PDEFilterArrayP

IN/OUT A pointer to a PDEFilterArray structure. If it is not NULL , it is used to build Cos objects for the Filter, DecodeParms, and EncodeParms objects. If filtersP is NULL and kPDEImageEncodedData is set in flags , the existing Filter and DecodeParms are used. If kPDEImageEncodedData is not set and filtersP is NULL , the existing Cos objects (if any) for Filter and DecodeParms are removed and the resulting image is no longer compressed. EncodeParms is set it to DecodeParms if it exists (unless the filter is DCTDecode, for which EncodeParms is mandatory).

stm: IN ASStm

IN/OUT The stream for the image data.

Returns
void

PDEImageSetDecodeArray

void PDEImageSetDecodeArray(IN PDEImage image, IN ASFixed *decode, IN ASUns32 decodeSize)
PEWProcs.h:1572

Sets the decode array of an image. Normally, the decode array is accessed through the decode field in the PDEImageAttrs structure. However, this method defines a decode array to handle images with a color space that has more than four components.

Parameters
image: IN PDEImage

The image whose decode array is set.

decode: IN ASFixed *

A pointer to the decode array.

decodeSize: IN ASUns32

The number of elements in the decode array.

Returns
void

Structures(2)

Enums(3)

PDEImageAttrFlags

PEExpT.h:1868

Flags for PDEImageAttrs. See the description of image attributes in "Image Dictionaries" in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 8.9.5, page 206. You can find this document on the web store of the International Standards Organization (ISO).

Values
kPDEImageExternal
—

The image is an XObject.

kPDEImageIsMask
—

The image is an imagemask.

kPDEImageInterpolate
—

interpolate is true .

kPDEImageHaveDecode
—

The image has a decode array.

kPDEImageIsIndexed
—

The image uses an indexed color space.

kPDEImageMaskedByPosition
—

The image has a Mask key containing an ImageMask stream.

kPDEImageMaskedByColor
—

The image has a Mask key containing an array of color values.

PDEImageDataFlags

PEExpT.h:1900

Flags for PDEImageGetData() , PDEImageGetDataStm() , PDEImageSetData() , and PDEImageSetDataStm() .

Values
kPDEImageEncodedData
—

Indicates that the filter is active; data is encoded.

kPDEImageAllowDelayedRead
—
kPDEImage16bpcData
—

Indicates if the accompanying image data is 16-bit. Should be passed in for 16-bit images to PDEImageGetData/PDEImageGetDataStm to prevent the return of 8-bit converted data.

PDEImageFlate

5 items

Functions(4)

PDEImageFlateGetAttrs

void PDEImageFlateGetAttrs(IN PDEImageFlate imgFlate, OUT PDEImageFlateAttrsP attrsP, IN ASUns32 attrsSize)
PERProcs.h:2713

Gets the attributes of a flate image.

Parameters
imgFlate: IN PDEImageFlate

IN/OUT A flate image resource object.

attrsP: OUT PDEImageFlateAttrsP

IN/OUT (Filled by the method) A pointer to a PDEImageFlateAttrs structure containing the attributes of the flate image.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

Returns
void

PDEImageFlateGetDataStm

PERProcs.h:2744

Gets a data stream for a flate compressed image, PDEImageFlate object. The caller must dispose of the returned ASStm by calling ASStmClose().

Parameters
imgFlate: IN PDEImageFlate

IN/OUT The flate image whose data stream is obtained.

flags: IN ASUns32

IN/OUT PDEImageDataFlags flags. If the kPDEImageEncodedData flag is set, data is returned in encoded form. Otherwise, data is decoded.

Returns
ASStm

The stream for the image.

Structures(1)

PDEImageJPX

9 items

Functions(8)

PDEImageJPXGetDataStm

PERProcs.h:2789

Returns a stream containing the image data. Color component values are interlaced. For images with greater then 8 bits per component, the component values occupy the least significant bits of a two byte value. Valid values of flags are 0 .

Parameters
pdeImageJPX: IN PDEImageJPX
flags: IN ASUns32
Returns

Structures(1)

PDEObject

7 items

Functions(6)

PDEAcquire

PERProcs.h:1225

Increments the reference count for an object.

Parameters
obj: IN PDEObject

IN/OUT The element whose count is incremented.

Returns
void
See Also

PDEAddTag

void PDEAddTag(IN PDEObject object, IN ExtensionID clientID, IN ASUns32 tag, IN void *value)
PEWProcs.h:996

Adds an identifier-value pair to an object.

The clientID-tag combination is a unique identifier for the value. Each client has its own identifier space. It is often convenient to use ASAtoms as tags.

Tags are a purely memory-resident feature. In addition, management of tags is the responsibility of the client. A client must manage any memory pointed to by a tag. This method only contains a pointer to the data passed in by the client. The data and the pointer will not be saved to a file. The generic pointer type is not in the PDF specification.

Parameters
object: IN PDEObject
clientID: IN ExtensionID
tag: IN ASUns32
value: IN void *

A pointer to a value to associate with object . Only the pointer is stored. If the pointer points to data, it is the responsibility of the client to manage the data and its memory.

Returns
void

PDEGetTag

void * PDEGetTag(IN PDEObject object, IN ExtensionID clientID, IN ASUns32 tag)
PEWProcs.h:1017

Gets an object's value for a given clientID-tag identifier that was added by PDEAddTag.

Parameters
object: IN PDEObject

The element whose value is obtained.

clientID: IN ExtensionID

Identifies the caller/client. For clients, this should be the gExtensionID extension. For the Adobe PDF Library, if there is only one client of the PDFEdit subsystem, clientID should be zero. If there are multiple clients, each should specify a nonzero, non-negative clientID . (A negative clientID is reserved for the implementation.)

tag: IN ASUns32

The object's tag. If object has no tag, this is 0 .

Returns
void *

The value associated with the clientID-tag identifier.

PDERelease

PERProcs.h:1246

Decrements the reference count for the object. If the count becomes zero, the object is destroyed. Do not call PDERelease() on PDEContent that you acquired with PDPageAcquirePDEContent(); call PDPageReleasePDEContent() instead. Objects should only be disposed of with PDERelease() if the method by which they were obtained incremented the reference count for the object. In general, methods that get an object do not increment the reference count. Methods that increment the reference count typically contain the word acquire or create in the method name and specifically state that you must release the object.

Parameters
obj: IN PDEObject

IN/OUT The element released.

Returns
void
See Also

PDERemoveTag

void PDERemoveTag(IN PDEObject object, IN ExtensionID clientID, IN ASUns32 tag)
PEWProcs.h:1039

Removes an object's value for a given clientID-tag identifier that was added by PDEAddTag. If PDEAddTag is called with a 0 tag, this is the same as calling PDERemoveTag().

Parameters
object: IN PDEObject

The element whose tag is removed.

clientID: IN ExtensionID

Identifies the caller/client. For clients, this should be the gExtensionID extension. For the Adobe PDF Library, if there is only one client of the PDFEdit subsystem, clientID should be zero. If there are multiple clients, each should specify a nonzero, non-negative clientID . (A negative clientID is reserved for the implementation.)

tag: IN ASUns32

The tag value.

Returns
void

Structures(1)

PDEObject

typedef struct _t_PDEObject* PDEObject
PEExpT.h:108

The abstract super class of the PDFEdit classes. You can find the type of any object with the PDEObjectGetType() method. You can then cast and apply that class' methods to the object. In addition, you can cast any of the PDFEdit objects to a PDEObject and use it anywhere a PDEObject is called for, such as in the PDEObject methods.

PDEPS

9 items

Functions(7)

PDEPSGetAttrs

void PDEPSGetAttrs(IN PDEPS ps, OUT PDEPSAttrsP attrsP, IN ASUns32 attrsSize)
PERProcs.h:1008

The following PDEPS methods have been deprecated and do nothing.

Parameters
ps: IN PDEPS
attrsP: OUT PDEPSAttrsP
attrsSize: IN ASUns32
Returns
void

PDEPSSetData

void PDEPSSetData(IN PDEPS ps, IN ASUns8 *buffer, IN ASUns32 bufferSize)
PEWProcs.h:758

The following PDEPS methods have been deprecated and do nothing.

Parameters
ps: IN PDEPS
buffer: IN ASUns8 *
bufferSize: IN ASUns32
Returns
void

Structures(1)

Enums(1)

PDEPSFlags

PEExpT.h:1924

Flags for PDEPSAttrs .

Values
kPDEPSExternal
—

PS is an XObject.

PDEPath

11 items

Functions(8)

PDEPathAddSegment

void PDEPathAddSegment(IN PDEPath path, IN ASUns32 segType, IN ASFixed x1, IN ASFixed y1, IN ASFixed x2, IN ASFixed y2, IN ASFixed x3, IN ASFixed y3)
PEWProcs.h:1367

Adds a segment to a path. The number of ASFixed values used depends upon segType : segType ASFixed values kPDEMoveTo x1 y1 kPDELineTo x1 y1 kPDECurveTo x1 y1 x2 y2 y3 kPDECurveToV x1 y1 x2 y2 kPDECurveToY x1 y1 x2 y2 kPDERect x1 y1 x2 (width) y2 (height) kPDEClosePath None

Parameters
path: IN PDEPath

IN/OUT The path to which a segment is added.

segType: IN ASUns32

IN/OUT A PDEPathElementType value indicating the type of path to add.

x1: IN ASFixed

IN/OUT The x-coordinate of the first point.

y1: IN ASFixed

IN/OUT The y-coordinate of the first point.

x2: IN ASFixed

IN/OUT The x-coordinate of the second point.

y2: IN ASFixed

IN/OUT The y-coordinate of the second point.

x3: IN ASFixed

IN/OUT The x-coordinate of the third point.

y3: IN ASFixed

IN/OUT The y-coordinate of the third point.

Returns
void
See Also

PDEPathCreate

PEWProcs.h:479

Creates an empty path element. Call PDERelease() to dispose of the returned path object when finished with it.

Parameters
: void
Returns
PDEPath

An empty path element.

PDEPathGetData

PERProcs.h:715

Gets the size of the path data and, optionally, the path data.

Parameters
path: IN PDEPath
data: OUT ASInt32 *
dataSize: IN ASUns32

IN/OUT Specifies the size of the buffer provided in data. If it is less than the length of the path data, the method copies dataSize bytes. If it is zero, the ASFixed value of path->size is returned.

Returns
ASUns32

The length of the data of path .

PDEPathGetDataEx

PERProcs.h:3188

Gets the size of the path data and, optionally, the path data. This API is an extension to the PDEPathGetData API.

Parameters
path: IN PDEPath
data: OUT ASReal *
dataSize: IN ASUns32

IN/OUT Specifies the size of the buffer provided in data. If it is less than the length of the path data, the method copies dataSize bytes.

Returns
ASUns32

The length of the data of path .

PDEPathSetData

void PDEPathSetData(IN PDEPath path, IN ASInt32 *data, IN ASUns32 dataSize)
PEWProcs.h:455

Sets new path data for a path element.

Parameters
path: IN PDEPath

IN/OUT The path whose data is set.

data: IN ASInt32 *

IN/OUT A pointer to the path data. It is a variable-sized array of path operators and operands. The format is a 32-bit operator followed by zero to three ASFixedPoint values, depending on the operator. Operators are codes for moveto , lineto , curveto , rect , or closepath operators, and must be one of PDEPathElementType. Operands are ASFixedPoint values. The data is copied into the PDEPath object.

dataSize: IN ASUns32

IN/OUT The size of the new path data in bytes.

Returns
void

PDEPathSetDataEx

void PDEPathSetDataEx(IN PDEPath path, IN ASReal *data, IN ASUns32 dataSize)
PEWProcs.h:3696

Sets new path data for a path element. This API is an extension to the PDEPathSetData API.

Parameters
path: IN PDEPath

IN/OUT The path whose data is set.

data: IN ASReal *

IN/OUT A pointer to the path data. It is a variable-sized array of path operators and operands. The format is a 32-bit operator followed by zero to three ASReal values, depending on the operator. Operators are codes for moveto , lineto , curveto , rect , or closepath operators, and must be one of PDEPathElementType. Operands are ASReal values. The data is copied into the PDEPath object.

dataSize: IN ASUns32

IN/OUT The size of the new path data in bytes.

Returns
void

Structures(1)

Enums(2)

PDEPathElementType

PEExpT.h:1782

An enumerated data type for path segment operators in PDEPath elements.

Values
kPDEMoveTo
—

Designates the m ( moveto ) operator, which moves the current point.

kPDELineTo
—

Designates the l ( lineto ) operator, which appends a straight line segment from the current point.

kPDECurveTo
—

Designates the c ( curveto ) operator, which appends a bezier curve to the path.

kPDECurveToV
—

Designates the v ( curveto ) operator, which appends a bezier curve to the current path when the first control point coincides with initial point on the curve.

kPDECurveToY
—

Designates the y ( curveto ) operator, which appends a bezier curve to the current path when the second control point coincides with final point on the curve.

kPDERect
—

Designates the re operator, which adds a rectangle to the current path.

kPDEClosePath
—

Designates the h ( closepath ) operator, which closes the current sub-path.

kPDEPathLastType
—

Designates a special path element which is used as a default. It does not represent any actual path operations like moveto, lineto, etc.

PDEPathOpFlags

PEExpT.h:1839

Flags for paint operators in a PDEPath.

Values
kPDEInvisible
—

The path is neither stroked nor filled, so it is invisible.

kPDEStroke
—

Stroke the path, as with the S ( stroke ) operator.

kPDEFill
—

Fills the path, using the nonzero winding number rule to determine the region to fill, as with the f ( fill ) operator.

kPDEEoFill
—

Fills the path, using the even/odd rule to determine the region to fill, as with the f* ( eofill ) operator.

PDEPattern

3 items

Functions(2)

PDEPatternCreate

PEWProcs.h:1267

Creates a pattern object that can be used for a Pattern color space. See the description of Patterns in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 8.7, page 173. This document is provided on the web site of the International Standards Organization (ISO). Call PDERelease() to dispose of the returned pattern object when finished with it.

Parameters
cosObjP: const CosObj *

IN/OUT A CosObj stream for the pattern.

Returns
PDEPattern

A pattern.

Structures(1)

PDEPlace

6 items

Functions(5)

PDEPlaceCreate

PDEPlace PDEPlaceCreate(IN ASAtom mcTag, IN CosObj *cosObjP, IN ASBool isInline)
PEWProcs.h:1121

Creates a place object. Call PDERelease() to dispose of the returned place object when finished with it.

Parameters
mcTag: IN ASAtom

IN/OUT The tag name for the place. It must not contain any white space characters (for example, spaces or tabs).

cosObjP: IN CosObj *

IN/OUT An optional Marked Content dictionary associated with the place.

isInline: IN ASBool

If true , it emits the place's dictionary into the content stream inline. If false , then the dictionary is emitted outside of the content stream and referenced by name. See the Property Lists section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 14.6.2, page 554. You can find this document on the web store of the International Standards Organization (ISO).

Returns
PDEPlace

The place object.

PDEPlaceGetDict

ASBool PDEPlaceGetDict(IN PDEPlace pdePlace, OUT CosObj *placeDictP, OUT ASBool *isInline)
PERProcs.h:1389

Gets the Marked Content dictionary for a PDEPlace.

Parameters
pdePlace: IN PDEPlace

IN/OUT The place whose Marked Content dictionary is obtained.

placeDictP: OUT CosObj *

IN/OUT (Filled by the method) A pointer to the Marked Content dictionary; may be NULL .

isInline: OUT ASBool *

IN/OUT (Filled by the method) If true , the Marked Content dictionary is inline; may be NULL .

Returns
ASBool

true if dictionary is obtained, false if no dictionary is present.

See Also

PDEPlaceSetDict

void PDEPlaceSetDict(IN PDEPlace pdePlace, IN CosObj *placeDictP, IN ASBool isInline)
PEWProcs.h:1156

Sets the Marked Content dictionary for a PDEPlace. The dictionary can be emitted inline or referenced from the \\Properties key in the \Resources dictionary of the containing stream.

Parameters
pdePlace: IN PDEPlace
placeDictP: IN CosObj *
isInline: IN ASBool
Returns
void

Structures(1)

PDEPlace

typedef struct _t_PDEPlace* PDEPlace
PEExpT.h:232

A PDEElement that marks a place on a page in a PDF file. In a PDF file, a place is represented by the MP or DP Marked Content operators. Marked content is useful for adding structure information to a PDF file. For instance, a drawing program may want to mark a point with information, such as the start of a path of a certain type. Marked content provides a way to retain this information in the PDF file. A DP operator functions the same as the MP operator and, in addition, allows a property list dictionary to be associated with a place.

PDEShading

4 items

Functions(3)

PDEShadingCreateFromCosObj

PDEShading PDEShadingCreateFromCosObj(IN const CosObj *shadingP, IN ASFixedMatrixP matrixP)
PEWProcs.h:1471

Superseded by PDEShadingCreateFromCosObjEx() in Acrobat 10.0. Creates a smooth shading object. Call PDERelease() to dispose of the returned PDEShading object when finished with it.

Parameters
shadingP: IN const CosObj *

IN/OUT The shading dictionary.

matrixP: IN ASFixedMatrixP

IN/OUT The location and transformation matrix of the shading object.

Returns
PDEShading

A smooth shading object.

PDEShadingCreateFromCosObjEx

PDEShading PDEShadingCreateFromCosObjEx(IN const CosObj *shadingP, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3273

Creates a smooth shading object. Supersedes PDEShadingCreateFromCosObj() in Acrobat 10.0. Call PDERelease() to dispose of the returned PDEShading object when finished with it.

Parameters
shadingP: IN const CosObj *

IN/OUT The shading dictionary.

matrixP: IN ASDoubleMatrixP

IN/OUT The location and transformation matrix of the shading object.

Returns
PDEShading

A smooth shading object.

Structures(1)

PDESoftMask

14 items

Functions(12)

PDESoftMaskAcquireForm

PDEForm PDESoftMaskAcquireForm(IN PDESoftMask pdeSoftMask, IN ASFixedMatrixP matrixP)
PERProcs.h:1916

Superseded by PDESoftMaskAcquireFormEx() in Acrobat 10.0. Acquires the PDEForm that defines the soft mask. Call PDERelease() to dispose of the PDEForm when finished with it.

Parameters
pdeSoftMask: IN PDESoftMask

IN/OUT An object of type PDESoftMask.

matrixP: IN ASFixedMatrixP

IN/OUT A matrix defining the transformation from coordinate space to user space.

Returns
PDEForm

The XObject form of the soft mask.

PDESoftMaskAcquireFormEx

PDEForm PDESoftMaskAcquireFormEx(IN PDESoftMask pdeSoftMask, IN ASDoubleMatrixP matrixP)
PERProcs.h:3109

Supersedes PDESoftMaskAcquireForm() in Acrobat 10.0. Acquires the PDEForm that defines the soft mask. Call PDERelease() to dispose of the PDEForm when finished with it.

Parameters
pdeSoftMask: IN PDESoftMask

IN/OUT An object of type PDESoftMask.

matrixP: IN ASDoubleMatrixP

IN/OUT A matrix defining the transformation from coordinate space to user space.

Returns
PDEForm

The XObject form of the soft mask.

PDESoftMaskCreate

PEWProcs.h:1717

Creates a new soft mask object. Call PDERelease() to dispose of the returned PDESoftMask object when finished with it.

Parameters
cosDoc: IN CosDoc

IN/OUT The container document.

type: IN PDESoftMaskCreateFlags

IN/OUT Specifies how the mask is to be computed. It is one of the PDESoftMaskCreateFlags.

pdeForm: IN PDEForm

IN/OUT The form XObject that defines the soft mask. It is the source of the mask values and the PDColorSpace in which the composite computation is to be done.

Returns
PDESoftMask

The newly created object.

PDESoftMaskGetBackdropColor

ASInt32 PDESoftMaskGetBackdropColor(IN PDESoftMask pdeSoftMask, IN ASFixed *pColorValues, IN ASInt32 numValues)
PERProcs.h:1933

Gets the array of color values of the backdrop color. Given a pointer to an array and the length of the array, it copies the color values to that array and returns the number of values copied. If the pointer to the array is NULL , the number of color values is returned.

Parameters
pdeSoftMask: IN PDESoftMask

IN/OUT An object of type PDESoftMask.

pColorValues: IN ASFixed *

IN/OUT (Filled by the method) A pointer to an array of color values. If it is NULL , the number of color values is returned.

numValues: IN ASInt32

IN/OUT The length of the array pColorValues .

Returns
ASInt32

The number of values copied.

Structures(1)

Enums(1)

PDESoftMaskCreateFlags

PEExpT.h:2046

Flags for use with PDESoftMaskCreate().

Values
kPDESoftMaskTypeLuminosity
—

Specifies how the mask is to be computed.

kPDESoftMaskTypeAlpha
—

Specifies how the mask is to be computed.

PDEText

50 items

Functions(46)

PDETextAdd

void PDETextAdd(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASUns8 *text, IN ASInt32 textLen, IN PDEFont font, IN PDEGraphicStateP gstateP, IN ASUns32 gstateLen, IN PDETextStateP tstateP, IN ASUns32 tstateLen, IN ASFixedMatrixP textMatrixP, IN ASFixedMatrixP strokeMatrixP)
PEWProcs.h:380

Superseded by PDETextAddEx() in Acrobat 10.0. Adds a character or a text run to a PDEThe text object. This method does not change the reference count of pdeText ; however, the reference count of the objects in the gstateP parameter are incremented. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

The text object to which a character or text run is added.

flags: IN ASUns32

A PDETextFlags that specifies what kind of text to add. It must be one of the following values:

index: IN ASInt32

The index after which to add the character or text run.

text: IN ASUns8 *

A pointer to the characters to add. Note that passing NULL for the text can invalidate the text object, but will not raise an error. Callers must not pass NULL for this parameter.

textLen: IN ASInt32

The length of the text in bytes.

font: IN PDEFont

The font for the element.

gstateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gstateLen: IN ASUns32

The length of the graphics state for the element.

tstateP: IN PDETextStateP

A pointer to a PDETextState structure with the text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

tstateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the matrix for the element.

strokeMatrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the matrix for the line width when stroking text. It may be NULL . Note that this field is not currently used.

Returns
void

PDETextAddEx

void PDETextAddEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASUns8 *text, IN ASInt32 textLen, IN PDEFont font, IN PDEGraphicStateP gstateP, IN ASUns32 gstateLen, IN PDETextStateP tstateP, IN ASUns32 tstateLen, IN ASDoubleMatrixP textMatrixP, IN ASDoubleMatrixP strokeMatrixP)
PEWProcs.h:3613

Adds a character or a text run to a PDEThe text object. Supersedes PDETextAdd() in Acrobat 10.0. This method does not change the reference count of pdeText ; however, the reference count of the objects in the gstateP parameter are incremented. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

The text object to which a character or text run is added.

flags: IN ASUns32

A PDETextFlags that specifies what kind of text to add. It must be one of the following values:

index: IN ASInt32

The index after which to add the character or text run.

text: IN ASUns8 *

A pointer to the characters to add. Note that passing NULL for the text can invalidate the text object, but will not raise an error. Callers must not pass NULL for this parameter.

textLen: IN ASInt32

The length of the text in bytes.

font: IN PDEFont

The font for the element.

gstateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gstateLen: IN ASUns32

The length of the graphics state for the element.

tstateP: IN PDETextStateP

A pointer to a PDETextState structure with the text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

tstateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the matrix for the element.

strokeMatrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the matrix for the line width when stroking text. It may be NULL . Note that this field is currently not used.

Returns
void

PDETextAddGlyphs

void PDETextAddGlyphs(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN PDEGlyphRunP glyphRun, IN PDEFont font, IN PDEGraphicStateP gstateP, IN ASUns32 gstateLen, IN PDETextStateP tstateP, IN ASUns32 tstateLen, IN ASFixedMatrixP textMatrixP, IN ASFixedMatrixP strokeMatrixP)
PEWProcs.h:2618

Superseded by PDETextAddGlyphsEx() in Acrobat 10.0. Adds Unicode text to a PDEText object. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method does not change the reference count of pdeText ; however, the reference count of the objects in the gstateP parameter are incremented.

Parameters
pdeText: IN PDEText

The text object to which a character or text run is added.

flags: IN ASUns32

A PDETextFlags that specifies what kind of text to add. It must be one of the following values:

index: IN ASInt32

The index after which to add the character or text run.

glyphRun: IN PDEGlyphRunP

A pointer to a PDEGlyphRun structure with Unicode data, GlyphIDs and their correspondence.

font: IN PDEFont

The font for the element.

gstateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gstateLen: IN ASUns32

The length of the graphics state for the element.

tstateP: IN PDETextStateP

A pointer to a PDETextState structure with text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

tstateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the matrix for the element.

strokeMatrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the matrix for the line width when stroking text. It may be NULL . Note that, currently, this field is not used.

Returns
void

PDETextAddGlyphsEx

void PDETextAddGlyphsEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN PDEGlyphRunP glyphRun, IN PDEFont font, IN PDEGraphicStateP gstateP, IN ASUns32 gstateLen, IN PDETextStateP tstateP, IN ASUns32 tstateLen, IN ASDoubleMatrixP textMatrixP, IN ASDoubleMatrixP strokeMatrixP)
PEWProcs.h:3558

Adds Unicode text to a PDEText object. Supersedes PDETextAddGlyphs() in Acrobat 10.0. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method does not change the reference count of pdeText ; however, the reference count of the objects in the gstateP parameter are incremented.

Parameters
pdeText: IN PDEText

The text object to which a character or text run is added.

flags: IN ASUns32

A PDETextFlags that specifies what kind of text to add. It must be one of the following values:

index: IN ASInt32

The index after which to add the character or text run.

glyphRun: IN PDEGlyphRunP

A pointer to a PDEGlyphRun structure with Unicode data, GlyphIDs and their correspondence.

font: IN PDEFont

The font for the element.

gstateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gstateLen: IN ASUns32

The length of the graphics state for the element.

tstateP: IN PDETextStateP

A pointer to a PDETextState structure with text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

tstateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the matrix for the element.

strokeMatrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the matrix for the line width when stroking text. It may be NULL . Note that this field is currently not used.

Returns
void

PDETextCreate

PEWProcs.h:430

Creates an empty text object. Call PDERelease() to dispose of the returned text object when finished with it.

Parameters
: void
Returns
PDEText

An empty text object.

PDETextGetAdvance

void PDETextGetAdvance(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedPointP advanceP)
PERProcs.h:2524

Gets the advance width of a character or a text element. Advance width is returned in either character space or user space. The advance width is the amount by which the current point advances when the character is drawn. Advance width may be horizontal or vertical, depending on the writing style. Thus advanceP has both a horizontal and vertical component. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. In addition, set the kPDETextPageSpace flag to obtain the advance width in user space. If it is not set, the advance width is in character space. If this flag is not set, this method returns a value that is independent of any sizes, matrices, or scaling, simply adding up the font's raw glyph widths, supplemented only by unscaled character and word spacing.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose advance width is found.

flags: IN ASUns32

A PDETextFlags value that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

advanceP: OUT ASFixedPointP

(Filled by the method) A pointer to a ASFixedPoint value indicating the advance width.

Returns
void

PDETextGetAdvanceWidth

void PDETextGetAdvanceWidth(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedPointP advanceP)
PERProcs.h:608

Gets the advance width of a character or a text element. Advance width is returned in either character space or user space. The advance width is the amount by which the current point advances when the character is drawn. Advance width may be horizontal or vertical, depending on the writing style. Thus advanceP has both a horizontal and vertical component. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. In addition, set the kPDETextPageSpace flag to obtain the advance width in user space. If it is not set, the advance width is in character space. If this flag is not set, this method returns a value that is independent of any sizes, matrices, or scaling, simply adding up the font's raw glyph widths, supplemented only by unscaled character and word spacing.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose advance width is found.

flags: IN ASUns32

A PDETextFlags value that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

advanceP: OUT ASFixedPointP

(Filled by the method) A pointer to a ASFixedPoint value indicating the advance width.

Returns
void

PDETextGetBBox

void PDETextGetBBox(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedRectP bboxP)
PERProcs.h:399

Gets the bounding box of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose bounding box is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

bboxP: OUT ASFixedRectP

IN/OUT (Filled by the method) A pointer to ASFixedRect to set to the bounding box of specified character or text run.

Returns
void

PDETextGetFont

PERProcs.h:498

Gets the font for a text character or element. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method does not change the reference count of the returned PDEFont.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose font is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

Returns
PDEFont

The font of the specified character or text run.

PDETextGetGState

void PDETextGetGState(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT PDEGraphicStateP stateP, IN ASUns32 stateSize)
PERProcs.h:432

Gets the graphics state of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method does not increment the reference count of the objects in stateP .

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose graphics state is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

stateP: OUT PDEGraphicStateP

(Filled by the method) A pointer to a PDEGraphicState structure with the graphics state of the specified character or text run.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextGetGStateEx

void PDETextGetGStateEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PERProcs.h:3289

Gets the graphics state of a character or a text run. This method fills PDEGraphicStateEx as output which is higher precision alternative of PDEGraphicState structure. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method does not increment the reference count of the objects in stateP .

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose graphics state is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

stateP: OUT PDEGraphicStateExP

(Filled by the method) A pointer to a PDEGraphicStateExP structure with the graphics state of the specified character or text run.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextGetMatrix

void PDETextGetMatrix(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedMatrixP matrixP)
PERProcs.h:2338

Superseded by PDETextGetMatrixEx() in Acrobat 10.0. Returns the matrix of a character or a text element. Unlike PDETextGetTextMatrix(), this function does not take fontSize , hScale , and textRise in the textState into account. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose graphics state is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

matrixP: OUT ASFixedMatrixP

IN/OUT (Filled by the method) An ASFixedMatrixP that holds the matrix of the specified character or text run.

Returns
void

PDETextGetMatrixEx

void PDETextGetMatrixEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASDoubleMatrixP matrixP)
PERProcs.h:3158

Supersedes PDETextGetMatrix() in Acrobat 10.0. Returns the matrix of a character or a text element. Unlike PDETextGetTextMatrixEx(), this function does not take fontSize , hScale , and textRise in the textState into account. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose graphics state is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

matrixP: OUT ASDoubleMatrixP

IN/OUT (Filled by the method) An ASDoubleMatrixP that holds the matrix of the specified character or text run.

Returns
void

PDETextGetNumBytes

PERProcs.h:1619

Gets the number of bytes occupied by the character code or text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A PDEText object returned from one of the PDETextCreate methods whose text is examined.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

Returns
ASInt32

The number of bytes occupied by the text run or character.

PDETextGetQuad

void PDETextGetQuad(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedQuadP quadP)
PERProcs.h:1359

Gets the quad bounding the specified text run or character. The advance portion of the quad is based on the left side bearing and advance width. It must be one of the following values: Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. In addition, if the kPDETextBounding flag is set, PDETextGetQuad() uses the font descriptor's FontBBox , which is the smallest rectangle that encloses all characters in the font. The advance portion is based on the x-coordinates of the left and right sides of FontBBox and the advance width.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose quad is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object.

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

quadP: OUT ASFixedQuadP

IN/OUT (Filled by the method) A pointer to ASFixedQuad that bounds the specified character or text run.

Returns
void

PDETextGetRunForChar

PERProcs.h:354

Gets the index of the text run that contains the nth character in a text object.

Parameters
pdeText: IN PDEText

IN/OUT A text object to examine.

charIndex: IN ASInt32

IN/OUT The number of the character to find in pdeText .

Returns
ASInt32

The index of the text run with the specified character index into pdeText .

PDETextGetState

void PDETextGetState(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT PDETextStateP stateP, IN ASUns32 stateSize)
PERProcs.h:2235

Returns the text state of a character or a text element. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose text state is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

stateP: OUT PDETextStateP

IN/OUT (Filled by the method) A pointer to a PDETextState structure to fill with the text state of the specified character or text run.

stateSize: IN ASUns32

IN/OUT The size of the stateP buffer in bytes.

Returns
void

PDETextGetStrokeMatrix

void PDETextGetStrokeMatrix(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedMatrixP matrixP)
PERProcs.h:567

Superseded by PDETextGetStrokeMatrixEx() in Acrobat 10.0. Gets the stroke matrix of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method returns no valid information.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose stroke matrix is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

matrixP: OUT ASFixedMatrixP

(Filled by the method) A pointer to ASFixedMatrix that holds the stroke matrix of the specified character or text run. This matrix is the transformation for line widths when stroking. The h and v values of the matrix are ignored.

Returns
void

PDETextGetStrokeMatrixEx

void PDETextGetStrokeMatrixEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASDoubleMatrixP matrixP)
PERProcs.h:3091

Supersedes PDETextGetStrokeMatrix() in Acrobat 10.0. Gets the stroke matrix of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method returns no valid information.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose stroke matrix is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

matrixP: OUT ASDoubleMatrixP

(Filled by the method) A pointer to ASDoubleMatrix that holds the stroke matrix of the specified character or text run. This matrix is the transformation for line widths when stroking. The h and v values of the matrix are ignored.

Returns
void

PDETextGetText

ASInt32 PDETextGetText(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASUns8 *textBuffer)
PERProcs.h:640

Gets the text for a text run or character. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose text is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

textBuffer: OUT ASUns8 *

IN/OUT (Filled by the method) The text of the specified character or text run. textBuffer must be large enough to hold the returned text. If textBuffer is NULL , it returns the number of bytes required to hold the data.

Returns
ASInt32

The number of bytes in the text run or character.

PDETextGetTextMatrix

void PDETextGetTextMatrix(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASFixedMatrixP matrixP)
PERProcs.h:533

Superseded by PDETextGetTextMatrixEx() in Acrobat 10.0. Gets the matrix of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose matrix is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

matrixP: OUT ASFixedMatrixP

(Filled by the method) A pointer to ASFixedMatrix that holds the matrix of the specified character or text run. This is the transformation matrix from user space to the current text space. The h and v values of the matrix indicate the origin of the first character.

Returns
void

PDETextGetTextMatrixEx

void PDETextGetTextMatrixEx(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT ASDoubleMatrixP matrixP)
PERProcs.h:3057

Supersedes PDETextGetTextMatrix() in Acrobat 10.0. Gets the matrix of a character or a text run. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

A text object containing a character or text run whose matrix is found.

flags: IN ASUns32

A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

The index of the character or text run in pdeText .

matrixP: OUT ASDoubleMatrixP

(Filled by the method) A pointer to ASDoubleMatrix that holds the matrix of the specified character or text run. This is the transformation matrix from user space to the current text space. The h and v values of the matrix indicate the origin of the first character.

Returns
void

PDETextGetTextState

void PDETextGetTextState(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, OUT PDETextStateP stateP, IN ASUns32 stateSize)
PERProcs.h:467

Gets the text state of a character or a text element. This function handles only charSpacing , wordSpacing , and renderMode for backward compatibility. For all attributes, use PDETextGetState() instead. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose text state is found.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

stateP: OUT PDETextStateP

IN/OUT (Filled by the method) A pointer to a PDETextState structure to fill with the text state of the specified character or text run.

stateSize: IN ASUns32

IN/OUT The size of the stateP buffer in bytes.

Returns
void

PDETextIsAtPoint

ASBool PDETextIsAtPoint(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASFixedPoint point)
PERProcs.h:1731

Tests whether a point is on specified text. It checks if the point is in a bounding box for the PDEText. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT The text to test.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

point: IN ASFixedPoint

IN/OUT The point, specified in user space coordinates.

Returns
ASBool

true if the point is on the text, false otherwise.

PDETextIsAtRect

ASBool PDETextIsAtRect(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASFixedRect rect)
PERProcs.h:1760

Tests whether any part of a rectangle is on the specified text. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT The text to test.

flags: IN ASUns32

IN/OUT A PDETextFlags flag that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

rect: IN ASFixedRect

IN/OUT The rectangle, specified in user space coordinates.

Returns
ASBool

true if the text is on the rectangle, false otherwise.

PDETextRemove

void PDETextRemove(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASInt32 count)
PEWProcs.h:417

Removes characters or text runs from a text object. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run. This method decrements the reference count of objects associated with the pdeText in the graphic state and font.

Parameters
pdeText: IN PDEText

IN/OUT The text object from which text is removed.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

count: IN ASInt32

IN/OUT The number of characters or text runs to remove.

Returns
void

PDETextReplaceChars

void PDETextReplaceChars(IN PDEText pdeText, IN ASUns32 flags, IN ASInt32 index, IN ASUns8 *textBuffer, IN ASInt32 numChars)
PEWProcs.h:1300

Replaces characters in a text object. This method does not change the number of characters in the text object; extra characters are ignored. Value Description kPDETextChar Used for a text character. kPDETextRun Used for a text run.

Parameters
pdeText: IN PDEText

IN/OUT The text object in which characters are replaced.

flags: IN ASUns32

IN/OUT A PDETextFlags that specifies whether index refers to the character offset from the beginning of the text object or the index of the text run in the text object. It must be one of the following values:

index: IN ASInt32

IN/OUT The index of the character or text run in pdeText .

textBuffer: IN ASUns8 *

IN/OUT Replacement text.

numChars: IN ASInt32

IN/OUT The number of bytes to replace.

Returns
void

PDETextRunGetCharOffset

PERProcs.h:339

Gets the character offset of the first character of the specified text run.

Parameters
pdeText: IN PDEText

IN/OUT A text object containing a character or text run whose graphics state is found.

runIndex: IN ASInt32

IN/OUT The index of the text run whose first character's index is returned.

Returns
ASInt32

The character offset of the first character of the specified text run in pdeText .

PDETextRunSetFont

void PDETextRunSetFont(IN PDEText pdeText, IN ASInt32 runIndex, IN PDEFont font)
PEWProcs.h:290

Sets the font of a text run. This method decrements the reference count of the previous font and increments the reference count of the new font.

Parameters
pdeText: IN PDEText

IN/OUT The text object containing a text run whose font is set.

runIndex: IN ASInt32

IN/OUT The index of the text run.

font: IN PDEFont

IN/OUT The font set for the text run.

Returns
void
See Also

PDETextRunSetGState

void PDETextRunSetGState(IN PDEText pdeText, IN ASInt32 runIndex, IN PDEGraphicStateP stateP, IN ASUns32 stateSize)
PEWProcs.h:248

Sets the graphics state of a text run. This method increments the reference count of objects in stateP .

Parameters
pdeText: IN PDEText

The text object containing a text run whose graphics state is set.

runIndex: IN ASInt32

The index of the text run.

stateP: IN PDEGraphicStateP

A pointer to a PDEGraphicState structure with the graphics state to set.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextRunSetGStateEx

void PDETextRunSetGStateEx(IN PDEText pdeText, IN ASInt32 runIndex, IN PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PEWProcs.h:3763

Sets the graphics state of a text run. This method takes pointer to PDEGraphicStateEx as input which is higher precision alternative of PDEGraphicState structure. @note This method increments the reference count of objects in stateP.

Parameters
pdeText: IN PDEText
runIndex: IN ASInt32
stateP: IN PDEGraphicStateExP
stateSize: IN ASUns32
Returns
void

PDETextRunSetMatrix

void PDETextRunSetMatrix(IN PDEText pdeText, IN ASInt32 runIndex, IN ASFixedMatrixP matrixP)
PEWProcs.h:2253

Superseded by PDETextRunSetMatrixEx() in Acrobat 10.0. Sets the matrix of a text run. Unlike PDETextRunSetTextMatrix(), this function does not change fontSize, hScale, and textRise in the textState of PDEText.

Parameters
pdeText: IN PDEText

IN/OUT The text object containing a text run.

runIndex: IN ASInt32

IN/OUT The index of the text run.

matrixP: IN ASFixedMatrixP

IN/OUT ASFixedMatrixP pointer.

Returns
void

PDETextRunSetMatrixEx

void PDETextRunSetMatrixEx(IN PDEText pdeText, IN ASInt32 runIndex, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3674

Sets the matrix of a text run. Supersedes PDETextRunSetMatrix() in Acrobat 10.0. Unlike PDETextRunSetTextMatrixEx(), this function does not change fontSize , hScale , and textRise in the textState of PDEText.

Parameters
pdeText: IN PDEText

IN/OUT The text object containing a text run.

runIndex: IN ASInt32

IN/OUT The index of the text run.

matrixP: IN ASDoubleMatrixP

IN/OUT ASDoubleMatrixP pointer.

Returns
void

PDETextRunSetState

void PDETextRunSetState(IN PDEText pdeText, IN ASInt32 runIndex, IN PDETextStateP stateP, IN ASUns32 stateSize)
PEWProcs.h:2067

Sets the text state of a text run.

Parameters
pdeText: IN PDEText

The text object containing a text run whose state is set.

runIndex: IN ASInt32

The index of the text run.

stateP: IN PDETextStateP

A pointer to a PDETextState structure with the state to set.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextRunSetStrokeMatrix

void PDETextRunSetStrokeMatrix(IN PDEText pdeText, IN ASInt32 runIndex, IN ASFixedMatrixP matrixP)
PEWProcs.h:328

Superseded by PDETextRunSetStrokeMatrixEx() in Acrobat 10.0. Sets the stroke matrix of a text run. Currently this method is not implemented.

Parameters
pdeText: IN PDEText

The text object containing a text run whose stroke matrix is set.

runIndex: IN ASInt32

The index of the text run.

matrixP: IN ASFixedMatrixP

A pointer to an ASFixedMatrix that holds the stroke matrix.

Returns
void

PDETextRunSetStrokeMatrixEx

void PDETextRunSetStrokeMatrixEx(IN PDEText pdeText, IN ASInt32 runIndex, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3429

Sets the stroke matrix of a text run. Supersedes PDETextRunSetStrokeMatrix() in Acrobat 10.0. Currently this method is not implemented (Acrobat 10 and later).

Parameters
pdeText: IN PDEText

The text object containing a text run whose stroke matrix is set.

runIndex: IN ASInt32

The index of the text run.

matrixP: IN ASDoubleMatrixP

A pointer to an ASDoubleMatrix that holds the stroke matrix.

Returns
void

PDETextRunSetTextMatrix

void PDETextRunSetTextMatrix(IN PDEText pdeText, IN ASInt32 runIndex, IN ASFixedMatrixP matrixP)
PEWProcs.h:309

Superseded by PDETextRunSetTextMatrixEx() in Acrobat 10.0. Sets the text matrix of a text run.

Parameters
pdeText: IN PDEText

IN/OUT The text object containing a text run whose text matrix is set.

runIndex: IN ASInt32

IN/OUT The index of the text run.

matrixP: IN ASFixedMatrixP

IN/OUT A pointer to an ASFixedMatrix that holds the text matrix.

Returns
void

PDETextRunSetTextMatrixEx

void PDETextRunSetTextMatrixEx(IN PDEText pdeText, IN ASInt32 runIndex, IN ASDoubleMatrixP matrixP)
PEWProcs.h:3410

Sets the text matrix of a text run. Supersedes PDETextRunSetTextMatrix() in Acrobat 10.0.

Parameters
pdeText: IN PDEText

IN/OUT The text object containing a text run whose text matrix is set.

runIndex: IN ASInt32

IN/OUT The index of the text run.

matrixP: IN ASDoubleMatrixP

IN/OUT A pointer to an ASDoubleMatrix that holds the text matrix.

Returns
void

PDETextRunSetTextState

void PDETextRunSetTextState(IN PDEText pdeText, IN ASInt32 runIndex, IN PDETextStateP stateP, IN ASUns32 stateSize)
PEWProcs.h:272

Sets the text state of a text run. This method has the following side effect: It modifies the text matrix of the run. In order to maintain backward compatibility, this method only directly operates on the first four fields of PDETextState . When it is called, it calculates a new text matrix with three additional fields: fontSize , hScale , and textRise (see PDETextState ). To avoid this behavior, use PDETextRunSetState() instead (which was added to address this problem).

Parameters
pdeText: IN PDEText

The text object containing a text run whose text state is set.

runIndex: IN ASInt32

The index of the text run.

stateP: IN PDETextStateP

A pointer to a PDETextState structure with text state.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextSplitRunAt

void PDETextSplitRunAt(IN PDEText pdeText, IN ASInt32 splitLoc)
PEWProcs.h:1250

Splits a text run into two text runs.

Parameters
pdeText: IN PDEText

The text object containing a text run to split.

splitLoc: IN ASInt32

The split location, relative to the text object. The first text run is from character index 0 up to splitLoc . The second text run is from splitLoc + 1 to the end of the run.

Returns
void

Structures(1)

PDEText

typedef struct _t_PDEText* PDEText
PEExpT.h:166

A PDEElement representing text. It is a container for text as show strings or as individual characters. Each sub-element may have different graphics state properties. However, the same clip applies to all sub-elements of a PDEText. Also, the charpath of a PDEText can be used to represent a clip.

Enums(3)

PDETextFlags

PEExpT.h:1736

A bit field used in PDEText methods.

Values
kPDETextRun
—

Text run.

kPDETextChar
—

Character (text run with only one character).

kPDETextPageSpace
—

Obtain the advance width in page space.

kPDETextGetBounds
—

Fill in the left and right bounds of the text run's bounding box.

kPDETextPreciseQuad
—

PDETextRenderMode

PEExpT.h:1760

Flags indicating text rendering mode set by the Tr operator.

Values
kPDETextFill
—

Fill text.

kPDETextStroke
—

Stroke text.

kPDETextFillAndStroke
—

Fill and stroke text.

kPDETextInvisible
—

Text with no fill and no stroke (invisible).

See Also

PDETextStateWasSetFlags

PEExpT.h:678

A structure describing the text state that was set.

Values
kPDECharSpacingWasSet
—

Character spacing was set corresponding to the Tc operator.

kPDEWordSpacingWasSet
—

Word spacing was set corresponding to the Tw operator.

kPDERenderModeWasSet
—

Text rendering mode was set corresponding to the Tr operator.

kPDEFontSizeWasSet
—

Font size was set corresponding to the Tf operator.

kPDEHScaleWasSet
—

Horizontal Scaling was set corresponding to the Tz operator.

kPDETextRiseWasSet
—

Text rise was set corresponding to the Ts operator.

PDETextItem

20 items

Functions(19)

PDETextItemCopyText

ASUns32 PDETextItemCopyText(IN PDETextItem textItem, OUT ASUns8 *buffer, IN ASUns32 bufferSize)
PERProcs.h:2607

Copies the text from a text item element into a character buffer.

Parameters
textItem: IN PDETextItem

A pointer to the characters to add. Note that passing NULL for text can invalidate the text object but will not raise an error. Callers must not pass NULL for this parameter.

buffer: OUT ASUns8 *

(Filled by the method) A pointer to a buffer in which to store the copy.

bufferSize: IN ASUns32

The length of the text buffer in bytes.

Returns
ASUns32

The length in bytes of textItem .

PDETextItemCreate

PDETextItem PDETextItemCreate(IN ASUns8 *text, IN ASUns32 textLen, IN PDEFont font, IN PDEGraphicStateP gStateP, IN ASUns32 gStateLen, IN PDETextStateP textStateP, IN ASUns32 textStateLen, IN ASFixedMatrix *textMatrixP)
PEWProcs.h:2396

Superseded by PDETextItemCreateEx() in Acrobat 10.0. Creates a text item element containing a character or text run, which can be added to a PDEText text object. Call PDERelease() to dispose of the returned PDETextItem object when finished with it.

Parameters
text: IN ASUns8 *

A pointer to the characters to add. Note that passing NULL for text can invalidate the text object but will not raise an error. Callers must not pass NULL for this parameter.

textLen: IN ASUns32

The length of the text in bytes.

font: IN PDEFont

The font for the element.

gStateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gStateLen: IN ASUns32

The length of the graphics state for the element.

textStateP: IN PDETextStateP

A pointer to a PDETextState structure with the text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

textStateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASFixedMatrix *

A pointer to an ASFixedMatrix that holds the matrix for the element.

Returns

PDETextItemCreateEx

PDETextItem PDETextItemCreateEx(IN ASUns8 *text, IN ASUns32 textLen, IN PDEFont font, IN PDEGraphicStateP gStateP, IN ASUns32 gStateLen, IN PDETextStateP textStateP, IN ASUns32 textStateLen, IN ASDoubleMatrix *textMatrixP)
PEWProcs.h:3492

Creates a text item element containing a character or text run, which can be added to a PDEText text object. Supersedes PDETextItemCreate() in Acrobat 10.0. Call PDERelease() to dispose of the returned PDETextItem object when finished with it.

Parameters
text: IN ASUns8 *

A pointer to the characters to add. Note that passing NULL for text can invalidate the text object but will not raise an error. Callers must not pass NULL for this parameter.

textLen: IN ASUns32

The length of the text in bytes.

font: IN PDEFont

The font for the element.

gStateP: IN PDEGraphicStateP

A pointer to a PDEGraphicStateP structure with the graphics state for the element.

gStateLen: IN ASUns32

The length of the graphics state for the element.

textStateP: IN PDETextStateP

A pointer to a PDETextState structure with the text state for the element. Note that PDFEdit ignores the wasSetFlags flag of the PDETextState structure, so you must initialize the PDETextState fields.

textStateLen: IN ASUns32

The length of the text state for the element.

textMatrixP: IN ASDoubleMatrix *

A pointer to an ASDoubleMatrix that holds the matrix for the element.

Returns

PDETextItemGetGState

void PDETextItemGetGState(IN PDETextItem textItem, OUT PDEGraphicStateP stateP, IN ASUns32 stateSize)
PERProcs.h:2624

Gets the graphics state for a text item.

Parameters
textItem: IN PDETextItem

Text item whose graphic state is obtained.

stateP: OUT PDEGraphicStateP

(Filled by the method) A pointer to a PDEGraphicState structure with graphics state of the text item.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextItemGetGStateEx

void PDETextItemGetGStateEx(IN PDETextItem textItem, OUT PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PERProcs.h:3310

Gets the graphics state for a text item. This method fills PDEGraphicStateEx as output which is higher precision alternative of PDEGraphicState structure.

Parameters
textItem: IN PDETextItem

Text item whose graphic state is obtained.

stateP: OUT PDEGraphicStateExP

(Filled by the method) A pointer to a PDEGraphicStateEx structure with graphics state of the text item.

stateSize: IN ASUns32

The size of the stateP buffer in bytes.

Returns
void

PDETextItemGetTextMatrix

void PDETextItemGetTextMatrix(IN PDETextItem textItem, IN ASUns32 charOffset, OUT ASFixedMatrix *textMatrixP)
PERProcs.h:2558

Superseded by PDETextItemGetTextMatrixEx() in Acrobat 10.0. Gets the text matrix for a character in a text item.

Parameters
textItem: IN PDETextItem

The text item.

charOffset: IN ASUns32

The offset of the character whose text matrix is obtained.

textMatrixP: OUT ASFixedMatrix *

(Filled by the method) A pointer to a ASFixedMatrix structure with the text matrix of the character.

Returns
void

PDETextItemGetTextMatrixEx

void PDETextItemGetTextMatrixEx(IN PDETextItem textItem, IN ASUns32 charOffset, OUT ASDoubleMatrix *textMatrixP)
PERProcs.h:3127

Supersedes PDETextItemGetTextMatrix() in Acrobat 10.0. Gets the text matrix for a character in a text item.

Parameters
textItem: IN PDETextItem

The text item.

charOffset: IN ASUns32

The offset of the character whose text matrix is obtained.

textMatrixP: OUT ASDoubleMatrix *

(Filled by the method) A pointer to a ASDoubleMatrix structure with the text matrix of the character.

Returns
void

PDETextItemGetTextState

void PDETextItemGetTextState(IN PDETextItem textItem, OUT PDETextStateP textStateP, IN ASUns32 textStateSize)
PERProcs.h:2574

Gets the text state of a text item.

Parameters
textItem: IN PDETextItem

The text item whose text state is obtained.

textStateP: OUT PDETextStateP

(Filled by the method) A pointer to a PDETextStateP structure with text state of the text item.

textStateSize: IN ASUns32

The size of the texStateP structure in bytes.

Returns
void

PDETextItemReplaceChars

void PDETextItemReplaceChars(IN PDETextItem textItem, IN ASUns32 charIndex, IN ASUns8 *newChar, IN ASUns32 newCharLen)
PEWProcs.h:2496

Replaces characters in a text item. This method does not change the number of characters in the text item; extra characters are ignored.

Parameters
textItem: IN PDETextItem

The text item whose characters are replaced.

charIndex: IN ASUns32

The index position of the characters to replace.

newChar: IN ASUns8 *

The replacement text.

newCharLen: IN ASUns32

The number of bytes to replace.

Returns
void

PDETextItemSetFont

PEWProcs.h:2413

Sets the font for a text item. This method decrements the reference count of the previous font and increments the reference count of the new font.

Parameters
textItem: IN PDETextItem

The text item whose font is set.

font: IN PDEFont

The new font object.

Returns
void

PDETextItemSetGStateEx

void PDETextItemSetGStateEx(IN PDETextItem textItem, OUT PDEGraphicStateExP stateP, IN ASUns32 stateSize)
PEWProcs.h:3783

Sets the graphics state for a text item. This method takes pointer to PDEGraphicStateEx as input which is higher precision alternative of PDEGraphicState structure.

Parameters
textItem: IN PDETextItem
stateP: OUT PDEGraphicStateExP
stateSize: IN ASUns32
Returns
void

PDETextItemSetTextState

void PDETextItemSetTextState(IN PDETextItem textItem, IN PDETextStateP textStateP, IN ASUns32 textStateSize)
PEWProcs.h:2445

Sets the text state for a text item.

Parameters
textItem: IN PDETextItem

The text item whose text state is set.

textStateP: IN PDETextStateP

A PDETextStateP structure with the new text state of the text item.

textStateSize: IN ASUns32

The size of the textStateP structure in bytes.

Returns
void

Structures(1)

PDEUnknown

2 items

Functions(1)

Structures(1)

PDEXGroup

11 items

Functions(9)

PDEXGroupCreate

PEWProcs.h:1774

Create a new XGroup of the given type. Call PDERelease() to dispose of the returned PDEXGroup object when finished with it.

Parameters
cosDoc: IN CosDoc

The document in which the object will be created.

type: IN PDEXGroupCreateFlags

It must be kPDEXGroupTypeTransparency.

Returns
PDEXGroup

The newly created transparency group object.

PDEXGroupGetCosObj

void PDEXGroupGetCosObj(IN PDEXGroup pdeXGroup, OUT CosObj *cosObjP)
PERProcs.h:1957

Gets the CosObj of the transparency group.

Parameters
pdeXGroup: IN PDEXGroup

The transparency group object.

cosObjP: OUT CosObj *

(Filled by the method) A pointer to the Cos object.

Returns
void

PDEXGroupSetColorSpace

void PDEXGroupSetColorSpace(IN PDEXGroup pdeXGroup, IN PDEColorSpace pdeColorSpace)
PEWProcs.h:1804

Sets the PDEXObject that defines the color space into which colors are converted when painted into this group.

Parameters
pdeXGroup: IN PDEXGroup

The transparency group object.

pdeColorSpace: IN PDEColorSpace

The color space to associate with the XGroup.

Returns
void

PDEXGroupSetIsolated

void PDEXGroupSetIsolated(IN PDEXGroup pdeXGroup, IN ASBool isolated)
PEWProcs.h:1794

Sets the XGroup to be isolated or not. It corresponds to the / I key within the XGroup's dictionary.

Parameters
pdeXGroup: IN PDEXGroup

IN/OUT The transparency group object.

isolated: IN ASBool

IN/OUT true to isolate the XGroup, false otherwise.

Returns
void

Structures(1)

Enums(1)

PDEXGroupCreateFlags

PEExpT.h:2058

An enumerated data type used to specify the type of transparency group to create.

Values
kPDEXGroupTypeTransparency
—

Creates a transparency XGroup object.

PDEXObject

3 items

Functions(2)

Structures(1)

PDSysEncoding

9 items

Functions(8)

PDSysEncodingCreateFromBaseName

PDSysEncoding PDSysEncodingCreateFromBaseName(IN ASAtom baseEncName, IN const char **diffEnc)
PEWProcs.h:2086

Create an encoding object from the base name. Call PDERelease() to dispose of the returned PDSysEncoding object when finished with it.

Parameters
baseEncName: IN ASAtom

IN/OUT The base encoding. See the description of Base Encoding in the Character Encoding section of the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.6.6, page 262. You can find this document on the web store of the International Standards Organization (ISO).

diffEnc: IN const char **

IN/OUT An array of 256 const char* describing the differences from the encoding specified by baseEncName . It may be NULL .

Returns
PDSysEncoding

An object of type PDSysEncoding.

PDSysEncodingCreateFromCodePage

PEWProcs.h:2334

Create an encoding object from a code page. Call PDERelease() to dispose of the returned PDSysEncoding object when finished with it.

Parameters
codePage: IN ASInt32

The code page character-mapping construct. See Code Page Values.

wMode: IN ASInt16

0 for horizontal writing, 1 for vertical writiing.

Returns
PDSysEncoding

An object of type PDSysEncoding.

Structures(1)

PDSysFont

19 items

Functions(18)

PDEmbedSysFontForPDEFont

PDSysFont.h:330

If there is a font on the system that matches this PDEFont, embed the full font regardless of whether it was subsetted or not embedded at all in the first place. This will not work for CID fonts, because they must be subsetted. The matching is based on the PDSysFontMatchFlags. Only the font object itself is modified; no content streams are changed. This method does not change the reference count of the font.

Parameters
font: IN PDEFont

IN/OUT A PDEFont object returned from one of the PDEFontCreate methods.

flags: IN ASUns32

IN/OUT Flags from PDSysFontMatchFlags that determine matches.

cosDoc: IN CosDoc

IN/OUT Currently unused.

Returns
void

PDEnumSysFonts

void PDEnumSysFonts(IN PDSysFontEnumProc enumProc, IN void *clientData)
PDSysFont.h:62

Enumerates all of the system fonts with a user-supplied procedure. The PDSysFont must be acquired during the enumeration if the font is needed beyond the enumProc . Developers should not assume that the enumProc will be called. If no system fonts are found (for example, if the PSRESOURCEPATH environment variable is not set on UNIX platforms), enumProc is never called, and PDEnumSysFonts() does not raise an exception. The font names that are returned from the methods PDEnumSysFonts() and PDSysFontGetAttrs() are different in 5.0 and later (compared to 4.05). The differences are shown in the table: Acrobat 4.05 Name Acrobat 4.05 PSname Acrobat 5.0 (and later) Name Acrobat 5.0 (and later) Psname MS-Mincho NULL MSMincho MS-Mincho MS-Gothic NULL MSGothic MS-Gothic MS-PMincho NULL MSPMincho MS-PMincho MS-PGothic NULL MSPGothic MS-PGothic MS-UIGothic NULL MSUIGothic MS-UIGothic

Parameters
enumProc: IN PDSysFontEnumProc

IN/OUT A user-supplied callback to call once for each system font. Enumeration continues until all fonts have been enumerated, or until enumProc returns false .

clientData: IN void *

IN/OUT A pointer to user-supplied data to pass to enumProc each time it is called.

Returns
void

PDFindSysFont

PDSysFont PDFindSysFont(IN PDEFontAttrsP attrs, IN ASUns32 attrsSize, IN ASUns32 flags)
PDSysFont.h:80

Finds a system font that matches the requested attributes. The method gets the PDSysFont rather than acquires it, so do not call PDERelease() on the returned PDSysFont when done with it.

Parameters
attrs: IN PDEFontAttrsP

IN/OUT A pointer to a PDEFontAttrs structure with the attributes of the font you are searching for.

attrsSize: IN ASUns32

IN/OUT The size of the attrs buffer in bytes.

flags: IN ASUns32

IN/OUT Flags from PDSysFontMatchFlags.

Returns
PDSysFont

The desired system font.

PDFindSysFontEx

PDSysFont PDFindSysFontEx(IN PDEFontAttrsP attrs, IN ASUns32 attrsSize, IN ASUns32 flags, OUT ASFixed *mmDesignVector, OUT ASInt32 *designVecLength)
PDSysFont.h:109

Finds a system font that matches the requested attributes. If the requested font is a multiple master font instance, the base font is returned, and the specified design vector is decoded and returned in mmDesignVector. The method gets the PDSysFont rather than acquires it, so do not call PDERelease() on the returned PDSysFont when done with it.

Parameters
attrs: IN PDEFontAttrsP

IN/OUT A pointer to a PDEFontAttrs structure with the attributes of the font you are searching for.

attrsSize: IN ASUns32

IN/OUT The size of the attrs buffer in bytes.

flags: IN ASUns32

IN/OUT Flags from PDSysFontMatchFlags.

mmDesignVector: OUT ASFixed *

IN/OUT (Filled by the method) If the requested font is a Multiple Master font instance, the specified design vector is decoded and returned in mmDesignVector .

designVecLength: OUT ASInt32 *

IN/OUT (Filled by the method) Pass the length of mmDesignVector . This parameter also returns the number of elements filled in mmDesignVector (the maximum is 4 ).

Returns
PDSysFont

The desired system font.

PDFindSysFontForPDEFont

PDSysFont.h:135

Finds a system font that matches the requested PDEFont. The method gets the PDSysFont rather than acquires it, so do not call PDERelease() on the returned PDSysFont when done with it.

Parameters
font: IN PDEFont

IN/OUT A PDEFont whose matching system font is found.

flags: IN ASUns32

IN/OUT A bit field comprised of PDSysFontMatchFlags values.

kPDSysFontMatchNameAndCharSet

kPDSysFontMatchFontType

PDSysFontMatchFlags Passing zero matches font by name only.

Returns
PDSysFont

The system font corresponding to font .

See Also

PDSysFontAcquirePlatformData

PDSysFontPlatDataP PDSysFontAcquirePlatformData(IN PDSysFont sysFont)
PDSysFont.h:280

Acquires platform-specific data for use by user interface code. It must be released when finished by PDSysFontReleasePlatformData().

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font returned by either PDFindSysFont() or PDFindSysFontForPDEFont().

Returns
PDSysFontPlatDataP

A pointer to a platform-dependent structure, PDSysFontPlatData , containing information relating to a system font. It returns NULL if it is out of memory.

PDSysFontGetAttrs

void PDSysFontGetAttrs(IN PDSysFont sysFont, OUT PDEFontAttrsP attrsP, IN ASUns32 attrsSize)
PDSysFont.h:173

Gets the attributes of a system font. The attributes will be returned in the buffer pointed to by attrsP . No more than attrsSize bytes will be written to the buffer. This call can be expensive to execute, as it may involve parsing the font in order to determine attributes. The font names that are returned from the methods PDEnumSysFonts() and PDSysFontGetAttrs() are different in 5.0 and later (compared to 4.05). The differences are shown in the table: Acrobat 4.05 Name Acrobat 4.05 PSname Acrobat 5.0 (and later) Name Acrobat 5.0 (and later) Psname MS-Mincho NULL MSMincho MS-Mincho MS-Gothic NULL MSGothic MS-Gothic MS-PMincho NULL MSPMincho MS-PMincho MS-PGothic NULL MSPGothic MS-PGothic MS-UIGothic NULL MSUIGothic MS-UIGothic

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font whose attributes are obtained.

attrsP: OUT PDEFontAttrsP

IN/OUT (Filled by the method) A pointer to a PDEFontAttrs structure with the attributes of a system font.

attrsSize: IN ASUns32

IN/OUT The size of the attrsP buffer in bytes.

Returns
void

PDSysFontGetCIDSystemInfo

void PDSysFontGetCIDSystemInfo(IN PDSysFont sysFont, OUT ASAtom *registry, OUT ASAtom *ordering, OUT ASInt32 *supplement)
PDSysFont.h:350

Derives the registry, ordering, and supplement information of a multi-byte system font. This information can be used to create a PDEFont from a system font. For more information on CID fonts, see PDFontGetCIDSystemInfo().

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a multi-byte system font.

registry: OUT ASAtom *

IN/OUT (Filled by the method) The ASAtom representing the CIDFont's Registry information (for example, "Adobe" ).

ordering: OUT ASAtom *

IN/OUT (Filled by the method) The ASAtom representing the CIDFont's Ordering information (for example, "Japan1" ).

supplement: OUT ASInt32 *

IN/OUT (Filled by the method) The SystemSupplement field from the CIDFont.

Returns
void

PDSysFontGetCreateFlags

PEWProcs.h:2110

This function returns a createFlags that can be passed to PDEFontCreateFromSysFontAndEncoding(). If the combination of sysFont and sysEnc is not allowed, -1 is returned.

Parameters
sysFont: IN PDSysFont

IN/OUT An object of type PDSysFont.

sysEnc: IN PDSysEncoding

IN/OUT An object of type PDSysEncoding.

Returns
ASInt32

See above.

PDSysFontGetEncoding

Uns8 ** PDSysFontGetEncoding(IN PDSysFont sysFont, OUT ASAtom *encodingNameP)
PDSysFont.h:235

Gets the encoding of a single byte encoded system font. The returned encoding must be freed via a call to ASfree(). If the return value is zero, encodingNameP contains the name of the encoding: For a Type 1 font, the default encoding is that specified by the Encoding value in the font dictionary. For a TrueType font, the default encoding is that specified in the single byte CMAP table.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font whose encoding is obtained.

encodingNameP: OUT ASAtom *

IN/OUT (Filled by the method) An encoding name if the return value of PDSysFontGetEncoding() is zero. If encodingNameP is the NULL ASAtom, the font uses its default encoding.

Returns
Uns8 **

An encoding array of 256 C strings. Each entry in the array either contains a glyph name or NULL . If it is NULL , the corresponding entry uses the font's built in encoding value.

PDSysFontGetInfo

void PDSysFontGetInfo(IN PDSysFont sysFont, OUT PDEFontInfoP infoP, IN ASUns32 infoSize)
PDSysFont.h:251

Gets high-level information about a system font.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font whose information is obtained.

infoP: OUT PDEFontInfoP

IN/OUT (Filled by the method) A pointer to PDEFontInfoRec structure to fill with font information for sysFont . No more than infoSize bytes are written to this buffer.

infoSize: IN ASUns32

IN/OUT The size of the infoP buffer in bytes.

Returns
void

PDSysFontGetScript

PDScript PDSysFontGetScript(IN PDSysFont sysFont)
PDSysFont.h:299

Returns a PDScript value for the specified PDSysFont.

Parameters
sysFont: IN PDSysFont

The font from which to acquire the script.

Returns
PDScript

PDSysFontGetType0Widths

void PDSysFontGetType0Widths(IN PDSysFont sysFont, IN ASAtom ordering, OUT ASBool *hasDW, OUT ASInt32 *dw, OUT CosObj *w, OUT ASBool *hasDW2, OUT ASInt32 *dw2, OUT CosObj *w2)
PDSysFont.h:409

Gets width information from a Type 0 system font. This information can be used to create a PDEFont from a system font. You can find this document on the web store of the International Standards Organization (ISO). You can find this document on the web store of the International Standards Organization (ISO). You can find this document on the web store of the International Standards Organization (ISO). You can find this document on the web store of the International Standards Organization (ISO). In general, you are discouraged from using this method. Instead use PDEFontCreateFromSysFontAndEncoding() followed by PDEFontCreateWidthsNow() to create the W entry in a font.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a multibyte system font.

ordering: IN ASAtom

IN/OUT An ASAtom representing the CIDFont's Ordering information. It is used to get a CMap object for sysFont .

hasDW: OUT ASBool *

IN/OUT (Filled by the method) true if sysFont has a valid dw value; false otherwise.

dw: OUT ASInt32 *

IN/OUT (Filled by the method) The default width for glyphs in a CIDFont. Currently, it is always 1000 . See the description of CIDFontType 0 in "Composite Fonts" in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.7, page 267.

w: OUT CosObj *

IN/OUT (Filled by the method) A Cos array of a set of lists that define the widths for the glyphs in the CIDFont. Each list can specify individual widths for consecutive CIDs, or one width for a range of CIDs. For information on the format of this array, see the description of CID Fonts in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.7.4, page 269.

hasDW2: OUT ASBool *

IN/OUT (Filled by the method) true if sysFont has a valid dw2 value. The default is false .

dw2: OUT ASInt32 *

IN/OUT (Filled by the method) The default metrics for writing mode 1. This entry is an array of two ASInt32 numbers: the y component of the position vector and the y component of the displacement vector for writing mode 1. The x component of the position vector is always half the width of the character. The x component of the displacement vector is always 0 . The default value is [880-1000] . For information on writing mode 1, see the description of CID Fonts in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.7.4, page 269.

w2: OUT CosObj *

IN/OUT (Filled by the method) A Cos array defining the metrics for vertical writing. Its format is similar to the format of the array in w . It defines the x and y components of the position vector, and the y component of the displacement vector. The x component of the displacement vector is always 0 . For information on the format of this array, see the description of CID Fonts in the ISO 32000-1:2008, Document Management-Portable Document Format-Part 1: PDF 1.7, section 9.7.4, page 269.

Returns
void

PDSysFontGetWidthsEx

void PDSysFontGetWidthsEx(IN PDSysFont sysFont, OUT ASInt16 *widthsP, IN ASFixed *mmDesignVector)
PDSysFont.h:204

Gets the widths of a single byte encoded system font.

Parameters
sysFont: IN PDSysFont

IN/OUT A PDSysFont object referencing a system font whose widths are obtained.

widthsP: OUT ASInt16 *

IN/OUT (Filled by the method) A pointer to the widths array. widthsP must have room for 256 entries.

mmDesignVector: IN ASFixed *

IN/OUT If sysFont is a multiple master font, it points to the design vector, whose length must equal the number of design axes of sysFont .

Returns
void

PDSysFontVerifyEncoding

PEWProcs.h:2125

Similar to PDSysFontGetCreateFlags but avoids compatibility issues with changing PDSysFontGetCreateFlags. If the combination of sysFont and sysEnc is not allowed, -1 is returned. If the combination is ok, then 0 is returned. If the combination only works if the font is embedded, kPDEFontCreateEmbedded is returned.

Parameters
sysFont: IN PDSysFont

IN/OUT An object of type PDSysFont.

sysEnc: IN PDSysEncoding

IN/OUT An object of type PDSysEncoding.

Returns
ASInt32

See above.

Enums(1)

Values
kPDSysFontUnknown
—
kPDSysFontType1
—
kPDSysFontTrueType
—
kPDSysFontCID
—
kPDSysFontATC
—
kPDSysFontOCF
—
kPDSysFontOpenTypeCFF
—
kPDSysFontOpenTypeCID
—
kPDSysFontOpenTypeTT
—