Get Started
Documentation

ApiDocument

new ApiDocument()

Class representing a document.

Methods

Name Description
AddComment

Adds a comment to the document.

AddElement

Add a paragraph or a table or a blockLvl content control using its position in the document content.

CreateNewHistoryPoint

Create new history point.

CreateNumbering

Create an abstract multilevel numbering with a specified type.

CreateSection

Create a new document section which ends at the specified paragraph. Allows to set local parameters for the current section - page size, footer, header, columns, etc.

CreateStyle

Create a new style with the specified type and name. If there is a style with the same name it will be replaced with a new one.

DeleteBookmark

Removes a bookmark from the document, if one exists.

GetAllCharts

Gets the collection of chart objects in the document.

GetAllContentControls

Get the list of all content controls in the document

GetAllDrawingObjects

Gets the collection of drawing objects in the document.

GetAllImages

Gets the collection of image objects in the document.

GetAllShapes

Gets the collection of shapes objects in the document.

GetAllTablesOnPage

Get the collection of tables on a given absolute page

GetBookmarkRange

Gets a bookmark's range.

GetClassType

Get the type of this class.

GetCommentsReport

Get a report about all the comments added to the document.

GetDefaultParaPr

Get a set of default paragraph properties in the current document.

GetDefaultStyle

Get the default style parameters for the specified document element.

GetDefaultTextPr

Get a set of default properties for the text run in the current document.

GetElement

Get the element by its position in the document.

GetElementsCount

Get the number of elements in the current document.

GetFinalSection

Get the document final section

GetRange

Returns a Range object that represents the part of the document contained in the specified document.

GetReviewReport

Get a report about every change which was made to the document in the review mode.

GetSections

Gets the collection of section objects in the document.

GetStyle

Get a style by the style name.

InsertContent

Insert an array of elements in the current position of the document.

InsertWatermark

Insert watermark on each page of document

IsTrackRevisions

Is change tracking enabled

Last

Get the last element of document.

Push

Push a paragraph or a table or a text to actually add it to the document.

RemoveAllElements

Remove all elements from the current document or from the current document element. When all elements are removed, a new empty paragraph is automatically created. If you want to add content to this paragraph, use the ApiDocumentContent.GetElement method.

RemoveElement

Remove element using the position specified.

RemoveSelection

Remove current selection

Search

Searches for the scope of a document object. The search results are a collection of ApiRange objects.

SearchAndReplace

Find and replace text.

SetEvenAndOddHdrFtr

Specify whether sections in this document will have different headers and footers for even and odd pages (one header/footer for odd pages and another header/footer for even pages).

SetTrackRevisions

Set to track changes or not

Example

Copy code
builder.CreateFile("docx");
var oDocument = Api.GetDocument();
var oParagraph, oParaPr, oTextPr, oRun;
var oNoSpacingStyle = oDocument.GetStyle("No Spacing");
var oSection = oDocument.GetFinalSection();
var oHeader = oSection.GetHeader("default", true);
oParagraph = oHeader.GetElement(0);
oParagraph.AddText("This is the text in the default header");
oTextPr = oDocument.GetDefaultTextPr();
oTextPr.SetFontSize(22);
oTextPr.SetLanguage("en-US");
oTextPr.SetFontFamily("Calibri");
oParaPr = oDocument.GetDefaultParaPr();
oParaPr.SetSpacingLine(276, "auto");
oParaPr.SetSpacingAfter(200);
var oNormalStyle = oDocument.GetDefaultStyle("paragraph");
oParaPr = oNormalStyle.GetParaPr();
oParaPr.SetSpacingLine(240, "auto");
oParaPr.SetJc("both");
oTextPr = oNormalStyle.GetTextPr();
oTextPr.SetColor(0x26, 0x26, 0x26, false);
var oHeading1Style = oDocument.CreateStyle("Heading 1", "paragraph");
oParaPr = oHeading1Style.GetParaPr();
oParaPr.SetKeepNext(true);
oParaPr.SetKeepLines(true);
oParaPr.SetSpacingAfter(240);
oTextPr = oHeading1Style.GetTextPr();
oTextPr.SetColor(0xff, 0x68, 0x00, false);
oTextPr.SetFontSize(40);
oTextPr.SetFontFamily("Calibri Light");
oParagraph = oDocument.GetElement(0);
oParagraph.SetStyle(oHeading1Style);
oParagraph.AddText("This is a heading");
oParagraph = Api.CreateParagraph();
oRun = Api.CreateRun();
oRun.AddText("Number of paragraph elements at this point: ");
oRun.AddTabStop();
oRun.AddText("" + oParagraph.GetElementsCount());
oRun.AddLineBreak();
oParagraph.AddElement(oRun);
oRun.AddText("Number of paragraph elements after we added a text run: ");
oRun.AddTabStop();
oRun.AddText("" + oParagraph.GetElementsCount());
oDocument.Push(oParagraph);
var oNumbering = oDocument.CreateNumbering("bullet");
var oNumLvl;
for (var nLvl = 0; nLvl < 8; ++nLvl) {
  oNumLvl = oNumbering.GetLevel(nLvl);
  oParagraph = Api.CreateParagraph();
  oParagraph.AddText("Default bullet lvl " + (nLvl + 1));
  oParagraph.SetNumbering(oNumLvl);
  oParagraph.SetContextualSpacing(true);
  oDocument.Push(oParagraph);
}
builder.SaveFile("docx", "ApiDocument.docx");
builder.CloseFile();

Resulting document