Main Content

mlreportgen.dom.LOF Class

Namespace: mlreportgen.dom
Superclasses: mlreportgen.dom.LOC

List of figures

Since R2020b

Description

Use an object of the mlreportgen.dom.LOF class to create a list of figures in a report.

Each list item contains the caption of a figure (image) and links to the caption in the report. In a PDF or Microsoft® Word report, a list item also includes the page number and a leader that fills the space between the caption and page number. In a PDF or Word report, the list is located at the point in the report where you append the LOC object. In an HTML report, the list is located in a sidebar with the title List of Figures.

The way a list is generated depends on the report type.

  • PDF — The DOM API generates the list during report generation.

  • Word — The DOM API generates a placeholder for the list. To generate the list items, you must update the Word document in your report generation program or in Word. See Update Tables of Contents and Generated Lists in Word Documents.

  • HTML — The DOM API generates a placeholder for the list. When the report opens in an HTML browser, the browser generates the list.

To include figures (images) in the list of figures:

  1. Create captions for the figures using mlreportgen.dom.Paragraph objects.

  2. Associate the Paragraph objects with a numbering stream that has the name figure by using an mlreportgen.dom.AutoNumber object.

The mlreportgen.dom.LOF class is a handle class.

Class Attributes

ConstructOnLoad
true
HandleCompatible
true

For information on class attributes, see Class Attributes.

Creation

Description

example

lofObj = mlreportgen.dom.LOF() creates an mlreportgen.dom.LOF object and sets the LeaderPattern property to '.'.

lofObj = mlreportgen.dom.LOF(leaderPattern) creates an mlreportgen.dom.LOF object and sets the LeaderPattern property to the specified leader pattern.

Properties

expand all

Name of numbering stream, specified as 'figure'. Do not change the value of this property. To create a list of captions using a custom numbering stream name, use an mlreportgen.dom.LOC object.

Type of leader to use between the caption and the page number, specified as one of these character vectors or string scalars:

  • '.' or 'dots'

  • ' ' or 'space'

This property applies only to PDF reports. Word reports always have a dots leader. HTML reports do not have a leader.

Style name, specified as a character vector or a string scalar. The style name is the name of a style specified in the style sheet of the document or document part to which this element is appended. The specified style defines the appearance of this element in the output document unless overridden by the formats specified by the Style property of this element. To learn more about using style sheets, see Use Style Sheet Styles.

Note

Microsoft Word output ignores the style name.

Attributes:

NonCopyable
true

Data Types: char | string

Format specification for this document element object, specified as an array of format objects. The formats specified by this property override corresponding formats specified by the StyleName property of this element. Formats that do not apply to this element are ignored.

Attributes:

NonCopyable
true

Data Types: cell

Custom attributes of this document element, specified as an array of mlreportgen.dom.CustomAttribute objects. The custom attributes must be supported by the output format of the document element to which this object is appended.

Attributes:

NonCopyable
true

Parent of mlreportgen.dom.LOF object, specified as a document element object. A document element must have only one parent.

Attributes:

SetAccess
private
NonCopyable
true

Children of mlreportgen.dom.LOF object, specified as an array of document element objects. This property contains the document element objects appended using the append method.

Attributes:

SetAccess
private
NonCopyable
true

Tag for mlreportgen.dom.LOF object, specified as a character vector or string scalar. The DOM API 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. Specify your own tag value to help you identify where to look when an issue occurs during document generation.

Attributes:

NonCopyable
true

Data Types: char | string

Object identifier for mlreportgen.dom.LOF object, specified as a character vector or string scalar. The DOM API generates a session-unique identifier when it creates the document element object. You can specify your own value for Id.

Attributes:

NonCopyable
true

Data Types: char | string

Methods

expand all

Examples

collapse all

Create a list of figures as an mlreportgen.dom.LOF object. To include figures in the list:

  • Create captions for the figures as mlreportgen.dom.Paragraph objects.

  • Associate the Paragraph objects with a numbering stream that has the name figure.

Import the DOM namespace so that you do not have to use long, fully qualified class names.

import mlreportgen.dom.*

Create a report.

d = Document("DOM Report with List of Figures","docx");

Create an LOF object and append it to the report.

LOFObj = LOF();
append(d,LOFObj);
append(d,PageBreak);

Include an image (figure) in the report.

append(d,Image('peppers.png'));

Create a paragraph for the figure caption.

p1 = Paragraph("Figure ");

Create an automatic numbering stream with the name figure and associate it with the paragraph.

append(p1,AutoNumber("figure"));

Increment the counter for the numbering stream.

p1.Style = {CounterInc("figure"),WhiteSpace("preserve")};

Append the rest of the caption text to the paragraph and append the paragraph to the report.

append(p1,".");
append(p1," Peppers");
append(d,p1);

Include another image in the report and create a caption for the figure. Associate the caption with the figure numbering stream.

append(d,Image("b747.jpg"));
p2 = Paragraph("Figure ");
append(p2,AutoNumber("figure"));
p2.Style = {CounterInc("figure"),WhiteSpace("preserve")};

Append the rest of the caption text to the paragraph and append the paragraph to the report.

append(p2,".");
append(p2," Airplane");
append(d,p2);

Close and view the report.

close(d);
rptview(d);

Here is the list of figures in the generated report:

Version History

Introduced in R2020b