Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

IWorkPagesDocument

Namespace OfficeIMO.IWork
Assembly OfficeIMO.IWork
Modifiers sealed

Creates template-free native Pages documents with page settings, headers/footers, rich body paragraphs, images and scalar tables.

Inheritance

  • Object
  • IWorkPagesDocument

Remarks

Instances are not thread safe. This model does not modify loaded packages or measure pagination.

Usage

Explore 1 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Returned or exposed by 1

Methods

public IWorkPagesImage AddImage(Byte[] data, Single widthPoints, Single heightPoints, String? accessibilityDescription = null, CancellationToken cancellationToken = default) #
Returns: IWorkPagesImage

Adds a validated PNG or JPEG snapshot as its own inline body paragraph.

Parameters

data System.Byte[] requiredposition: 0
widthPoints System.Single requiredposition: 1
heightPoints System.Single requiredposition: 2
accessibilityDescription System.String? = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
AddParagraph 2 overloads
public IWorkPagesParagraphData AddParagraph(String text, String fontName = "Arial", Single fontSizePoints = 12, String color = "000000") #
Returns: IWorkPagesParagraphData

Adds a left-aligned body paragraph with one font and opaque sRGB color.

Parameters

text System.String requiredposition: 0
fontName System.String = "Arial" optionalposition: 1
fontSizePoints System.Single = 12 optionalposition: 2
color System.String = "000000" optionalposition: 3
public IWorkPagesParagraphData AddParagraph(String text, IWorkPagesParagraphLayout layout, String fontName = "Arial", Single fontSizePoints = 12, String color = "000000") #
Returns: IWorkPagesParagraphData

Adds a body paragraph with immutable layout and one font. TAB characters use its native tab stops.

Parameters

text System.String requiredposition: 0
layout OfficeIMO.IWork.IWorkPagesParagraphLayout requiredposition: 1
fontName System.String = "Arial" optionalposition: 2
fontSizePoints System.Single = 12 optionalposition: 3
color System.String = "000000" optionalposition: 4
AddRichParagraph 2 overloads
public IWorkPagesParagraphData AddRichParagraph(IEnumerable<IWorkTextRunData> runs) #
Returns: IWorkPagesParagraphData

Adds a snapshot of rich character runs as one left-aligned body paragraph.

Parameters

runs System.Collections.Generic.IEnumerable<OfficeIMO.IWork.IWorkTextRunData> requiredposition: 0
public IWorkPagesParagraphData AddRichParagraph(IEnumerable<IWorkTextRunData> runs, IWorkPagesParagraphLayout layout) #
Returns: IWorkPagesParagraphData

Adds a snapshot of rich runs with immutable paragraph spacing and custom tabs.

Parameters

runs System.Collections.Generic.IEnumerable<OfficeIMO.IWork.IWorkTextRunData> requiredposition: 0
layout OfficeIMO.IWork.IWorkPagesParagraphLayout requiredposition: 1
public IWorkPagesTable AddTable(IWorkTableData data, String name = "Table 1", Single columnWidthPoints = 100, Single rowHeightPoints = 24, String fontName = "Arial", Single fontSizePoints = 12, String color = "000000") #
Returns: IWorkPagesTable

Adds a snapshot of scalar data as an inline body table with equally sized rows and columns.

Parameters

data OfficeIMO.IWork.IWorkTableData requiredposition: 0
name System.String = "Table 1" optionalposition: 1
columnWidthPoints System.Single = 100 optionalposition: 2
rowHeightPoints System.Single = 24 optionalposition: 3
fontName System.String = "Arial" optionalposition: 4
fontSizePoints System.Single = 12 optionalposition: 5
color System.String = "000000" optionalposition: 6
public Void ClearFooter() #
Returns: Void

Disables the footer and clears its text and distance.

public Void ClearHeader() #
Returns: Void

Disables the header and clears its text and distance.

public static IWorkPagesDocument Create(Single widthPoints = 612, Single heightPoints = 792, Single leftMarginPoints = 72, Single rightMarginPoints = 72, Single topMarginPoints = 72, Single bottomMarginPoints = 72) #
Returns: IWorkPagesDocument

Creates an empty document, using US Letter and one-inch margins by default.

Parameters

widthPoints System.Single = 612 optionalposition: 0
heightPoints System.Single = 792 optionalposition: 1
leftMarginPoints System.Single = 72 optionalposition: 2
rightMarginPoints System.Single = 72 optionalposition: 3
topMarginPoints System.Single = 72 optionalposition: 4
bottomMarginPoints System.Single = 72 optionalposition: 5
CreateNumberedList 2 overloads
public IWorkPagesNumberedList CreateNumberedList(String fontName = "Arial", Single fontSizePoints = 12) #
Returns: IWorkPagesNumberedList

Creates a decimal list; call AddItem or AddRichItem to insert body paragraphs.

Parameters

fontName System.String = "Arial" optionalposition: 0
fontSizePoints System.Single = 12 optionalposition: 1
public IWorkPagesNumberedList CreateNumberedList(IWorkDecimalListMarkerStyle markerStyle, String fontName = "Arial", Single fontSizePoints = 12) #
Returns: IWorkPagesNumberedList

Creates a decimal list with the selected marker punctuation at every level.

Parameters

markerStyle OfficeIMO.IWork.IWorkDecimalListMarkerStyle requiredposition: 0
fontName System.String = "Arial" optionalposition: 1
fontSizePoints System.Single = 12 optionalposition: 2
Save 2 overloads
public Void Save(Stream destination, IWorkPagesWriteOptions? options = null, CancellationToken cancellationToken = default) #
Returns: Void

Writes a completed package at the stream's current position and leaves the stream open.

Parameters

destination System.IO.Stream requiredposition: 0
options OfficeIMO.IWork.IWorkPagesWriteOptions? = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public Void Save(String path, Boolean overwrite = false, IWorkPagesWriteOptions? options = null, CancellationToken cancellationToken = default) #
Returns: Void

Atomically saves a native package, rejecting an existing file unless overwrite is enabled.

Parameters

path System.String requiredposition: 0
overwrite System.Boolean = false optionalposition: 1
options OfficeIMO.IWork.IWorkPagesWriteOptions? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public Byte[] SaveBytes(IWorkPagesWriteOptions? options = null, CancellationToken cancellationToken = default) #
Returns: Byte[]

Encodes a deterministic native Pages package without a template or native application.

Parameters

options OfficeIMO.IWork.IWorkPagesWriteOptions? = null optionalposition: 0
cancellationToken System.Threading.CancellationToken = default optionalposition: 1
SetFooter 2 overloads
public Void SetFooter(String text, String fontName = "Arial", Single fontSizePoints = 12, String color = "000000", Single distancePoints = 36) #
Returns: Void

Sets one left-aligned footer paragraph for every page in the document's single section.

Parameters

text System.String requiredposition: 0
fontName System.String = "Arial" optionalposition: 1
fontSizePoints System.Single = 12 optionalposition: 2
color System.String = "000000" optionalposition: 3
distancePoints System.Single = 36 optionalposition: 4
public Void SetFooter(IWorkTextRunData run, Single distancePoints = 36) #
Returns: Void

Sets a snapshot of one immutable character run as the left footer for every page.

Parameters

run OfficeIMO.IWork.IWorkTextRunData requiredposition: 0
distancePoints System.Single = 36 optionalposition: 1
SetHeader 2 overloads
public Void SetHeader(String text, String fontName = "Arial", Single fontSizePoints = 12, String color = "000000", Single distancePoints = 36) #
Returns: Void

Sets one left-aligned header paragraph for every page in the document's single section.

Parameters

text System.String requiredposition: 0
fontName System.String = "Arial" optionalposition: 1
fontSizePoints System.Single = 12 optionalposition: 2
color System.String = "000000" optionalposition: 3
distancePoints System.Single = 36 optionalposition: 4
public Void SetHeader(IWorkTextRunData run, Single distancePoints = 36) #
Returns: Void

Sets a snapshot of one immutable character run as the left header for every page.

Parameters

run OfficeIMO.IWork.IWorkTextRunData requiredposition: 0
distancePoints System.Single = 36 optionalposition: 1

Properties

public IWorkCanvasSize PageSize { get; } #

Gets page dimensions in points.

public Single LeftMarginPoints { get; } #

Gets the left body margin in points.

public Single RightMarginPoints { get; } #

Gets the right body margin in points.

public Single TopMarginPoints { get; } #

Gets the top body margin in points.

public Single BottomMarginPoints { get; } #

Gets the bottom body margin in points.

public IReadOnlyList<IWorkPagesParagraphData> Paragraphs { get; } #

Gets the body paragraphs in insertion order.

public IReadOnlyList<IWorkPagesTable> Tables { get; } #

Gets authored inline tables in insertion order.

public IReadOnlyList<IWorkPagesImage> Images { get; } #

Gets authored inline images in insertion order.

public IReadOnlyList<IWorkPagesNumberedList> NumberedLists { get; } #

Gets the document's decimal lists. Empty lists do not create body content or native styles.

public IReadOnlyList<IWorkPagesBodyBlock> BodyBlocks { get; } #

Gets paragraphs, images and tables in their shared body order.

public IWorkTextRunData? Header { get; private set; } #

Gets the immutable left header run, or null when headers are disabled.

public Single HeaderDistancePoints { get; private set; } #

Gets the native header distance from the page's top edge, in points.

public Single FooterDistancePoints { get; private set; } #

Gets the native footer distance from the page's bottom edge, in points.