mlreportgen.dom.NumPages class

Package: mlreportgen.dom
Superclasses:

Create placeholder for number of document pages

Description

Create a placeholder for the number of pages in a document. This object applies only to Word and PDF output. For Word output, opening a Word document causes Word to replace this object with the number of pages in the document. For PDF output, the DOM API replaces this object with the total number of pages when writing the document.

Construction

num = NumPages() creates an object for the total number of pages in the report.

Output Arguments

expand all

Total number of pages, returned as an mlreportgen.dom.NumPages object.

Properties

expand all

Children of this document element, specified as an array of DOM objects. This property is read-only.

Custom attributes of this element, specified as an array of mlreportgen.dom.CustomAttribute objects. Use custom attributes supported by the output format.

ID for this document element, specified as a character vector or string scalar. The DOM generates a session-unique ID when it creates the document element. You can specify your own ID.

Parent of this document element, specified as a DOM object. This property is read-only.

Tag for this document element, specified as a character vector or string scalar.

The DOM generates a session-unique tag as part of the creation of this object. The generated tag has the form CLASS:ID, where CLASS is the object class and ID is the value of the Id property of the object. Specifying your own tag value can help you to identify where an issue occurred during document generation.

Format objects that specify the format of a document element.

Name of the style to apply from the style sheet, specified as a character vector.

Methods

Method

Purpose

clone

Copy this object.

Examples

collapse all

This example inserts the total number of document pages in a page footer. Use this class to display the current page number along with the total number of pages, such as Page 1 of 3.

import mlreportgen.dom.*;
d = Document('mydoc','docx');
open(d);

% Create page footer
footer = DOCXPageFooter('default');
d.CurrentPageLayout.PageFooters = footer;

% Define page number and add to footer.
d.CurrentPageLayout.FirstPageNumber = 1;
t = Text('Page ');
t.WhiteSpace = 'preserve';
t1 = Text(' of ');
t1.WhiteSpace = 'preserve';
pageinfo = Paragraph();
pageinfo.HAlign = 'center';
append(pageinfo,t);
append(pageinfo,Page());
append(pageinfo,t1);
append(pageinfo,NumPages());
append(footer,pageinfo);

% Create several pages.
p = Paragraph('Hello World');
append(d,p);
p = Paragraph('Another page');
p.Style = {PageBreakBefore(true)};
append(d,p);
append(d,clone(p));

close(d);
rptview(d.OutputPath);
Introduced in R2016a