Skip to content

PDFiumPageObject

@scaryterry/pdfium


Defined in: src/document/page-object.ts:78

Base class for all PDF page objects.

Page objects are lightweight borrowed views on the parent page. They do not need to be disposed, but become invalid when the parent page is disposed.

Design convention: Getters are used for cheap, cached, or always-available properties (e.g. type, bounds). Methods are used for fallible, parameterised, or WASM-allocating operations (e.g. setMatrix(), getFont()).

using page = doc.getPage(0);
for (const obj of page.pageObjects()) {
console.log(obj.type, obj.bounds);
console.log('Fill colour:', obj.fillColour);
}

get bounds(): Rect

Defined in: src/document/page-object.ts:99

Bounding box in page coordinates (points, origin at bottom-left).

Rect


get dashPattern(): DashPattern | null

Defined in: src/document/page-object.ts:158

Get the dash pattern of this page object.

DashPattern | null


get fillColour(): Colour | null

Defined in: src/document/page-object.ts:104

Get the fill colour of this page object.

Colour | null


get hasClipPath(): boolean

Defined in: src/document/page-object.ts:194

Whether this page object has a clip path applied.

boolean


get hasTransparency(): boolean

Defined in: src/document/page-object.ts:176

Check if this page object has transparency.

boolean


get lineCap(): LineCapStyle

Defined in: src/document/page-object.ts:134

Get the line cap style of this page object.

LineCapStyle


get lineJoin(): LineJoinStyle

Defined in: src/document/page-object.ts:146

Get the line join style of this page object.

LineJoinStyle


get markCount(): number

Defined in: src/document/page-object.ts:238

Get the number of content marks on this page object.

number


get marks(): PageObjectMark[]

Defined in: src/document/page-object.ts:263

Get all content marks from this page object.

PageObjectMark[]


get matrix(): TransformMatrix | null

Defined in: src/document/page-object.ts:122

Get the transformation matrix of this page object.

TransformMatrix | null


get rotatedBounds(): QuadPoints | null

Defined in: src/document/page-object.ts:188

Get the rotated bounding box of this page object as quad points.

QuadPoints | null


get strokeColour(): Colour | null

Defined in: src/document/page-object.ts:110

Get the stroke colour of this page object.

Colour | null


get strokeWidth(): number | null

Defined in: src/document/page-object.ts:116

Get the stroke width of this page object.

number | null


get type(): PageObjectType

Defined in: src/document/page-object.ts:94

The type of this page object.

PageObjectType

addMark(name): PageObjectMark | null

Defined in: src/document/page-object.ts:282

Add a content mark to this page object.

ParameterTypeDescription
namestringThe mark name (e.g., ‘Artifact’, ‘Span’)

PageObjectMark | null

The mark data, or null if failed


destroy(): void

Defined in: src/document/page-object.ts:227

Destroy this page object and free its underlying resources.

Page objects are borrowed views — they do not own the underlying handle and become invalid when the parent page is disposed.

Only call this for page objects that have NOT been inserted into a page. Once an object is added to a page via builder methods, it is owned by the page and must not be destroyed manually.

After calling destroy(), any further access to this object’s properties or methods will throw.

void


getMark(index): PageObjectMark | null

Defined in: src/document/page-object.ts:249

Get a content mark by index.

ParameterTypeDescription
indexnumberZero-based mark index

PageObjectMark | null

The mark information, or null if not found


removeMark(index): boolean

Defined in: src/document/page-object.ts:298

Remove a content mark from this page object by index.

ParameterTypeDescription
indexnumberZero-based mark index

boolean

True if successful


setBlendMode(blendMode): void

Defined in: src/document/page-object.ts:182

Set the blend mode of this page object.

ParameterType
blendModeBlendMode

void


setDashPattern(pattern): boolean

Defined in: src/document/page-object.ts:164

Set the dash pattern of this page object.

ParameterType
patternDashPattern

boolean


setDashPhase(phase): boolean

Defined in: src/document/page-object.ts:170

Set the dash phase of this page object.

ParameterType
phasenumber

boolean


setLineCap(lineCap): boolean

Defined in: src/document/page-object.ts:140

Set the line cap style of this page object.

ParameterType
lineCapLineCapStyle

boolean


setLineJoin(lineJoin): boolean

Defined in: src/document/page-object.ts:152

Set the line join style of this page object.

ParameterType
lineJoinLineJoinStyle

boolean


setMatrix(matrix): boolean

Defined in: src/document/page-object.ts:128

Set the transformation matrix of this page object.

ParameterType
matrixTransformMatrix

boolean


transformClipPath(matrix): void

Defined in: src/document/page-object.ts:200

Transform the clip path of this page object.

ParameterType
matrixTransformMatrix

void