Main Content

mlreportgen.ppt.InternalLink Class

Namespace: mlreportgen.ppt
Superclasses: mlreportgen.ppt.Text

Hyperlink to a slide in a presentation

Since R2021a

Description

Use an object of the mlreportgen.ppt.InternalLink class to link from one slide to another slide in a presentation.

The mlreportgen.ppt.InternalLink class is a handle class.

Class Attributes

ConstructOnLoad
true
HandleCompatible
true

For information on class attributes, see Class Attributes.

Creation

Description

internalLinkObj = mlreportgen.ppt.InternalLink creates an empty InternalLink object.

internalLinkObj = mlreportgen.ppt.InternalLink(targetSlideName,linkText) creates an InternalLink object with the Target property set to targetSlideName and the Content property set to linkText.

example

internalLinkObj = mlreportgen.ppt.InternalLink(targetSlideIndex,linkText) creates an InternalLink object with the Target property set to targetSlideIndex and the Content property set to linkText.

example

Properties

expand all

Target slide of the hyperlink, specified as an integer, character vector, or string scalar. Use an integer to indicate the index of the target slide. Use a character vector or string scalar to indicate the name of the target slide.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Link text, specified as a character vector or string scalar.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Whether to use bold for the link text, specified as true or false. A setting of true renders text in bold.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: logical

Font family for the link text, specified as a character vector or string scalar. Specify a font that appears in the font list in Microsoft® PowerPoint®. To see the font list, in PowerPoint, on the Home tab, in the Font group, click the arrow to the right of the font.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Font family for complex scripts, specified as a character vector or string scalar. Specify a font family to use when substituting in a locale that requires a complex script, such as Arabic or Asian, to render text.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Font color for the link text, specified as a character vector or string scalar that contains a CSS color name or hexadecimal RGB value.

  • To use the name of a color, specify a CSS color name. For a list of CSS color names, seehttps://www.w3.org/wiki/CSS/Properties/color/keywords.

  • To specify a hexadecimal RGB format, use # as the first character and two-digit hexadecimal numbers for the red, green, and blue values. For example, "#0000ff" specifies blue.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Font size for the link text, specified as a character vector or string scalar that contains a number followed by a unit of measurement. For example, "11pt" specifies 11 points. Valid abbreviations are:

  • "px" — Pixels

  • "cm" — Centimeters

  • "in" — Inches

  • "mm" — Millimeters

  • "pc" — Picas

  • "pt" — Points

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Whether to use italic for the link text, specified as true or false. A setting of true renders text in italic.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: logical

Strikethrough style for the link text, specified as one of these values:

  • "single" — Single horizontal line

  • "none" — No strikethrough line

  • "double" — Double horizontal line

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Whether to display the link text as a subscript, specified as true or false. A setting of true renders text as a subscript.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: logical

Whether to display the link text as a superscript, specified as true or false. A setting of true renders text as a superscript.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: logical

This property is ignored.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Link text formatting, specified as a cell array of PPT format objects.

Add format objects by concatenating the existing value of the Style property with a cell array that contains the format objects that you are adding. For example:

link = mlreportgen.ppt.InternalLink(3,"link text");
link.Style = [link.Style {Bold(true)}];

See Presentation Formatting Approaches.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: cell

Parent of this object, specified as a PPT API object. A PPT API object must only have one parent.

Attributes:

GetAccess
public
SetAccess
private
NonCopyable
true

The class ignores this property.

Attributes:

GetAccess
public
SetAccess
private
NonCopyable
true

Tag, specified as a character vector or string scalar. The PPT 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. Use this value to help identify where an issue occurs during document generation.

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

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

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Data Types: char | string

Methods

expand all

Examples

collapse all

This example links to a slide using an mlreportgen.ppt.InternalLink object that specifies the target slide name.

Create the presentation.

import mlreportgen.ppt.*
ppt = Presentation("myPresentation1.pptx");
open(ppt);

Add a slide to the presentation.

slide1 = add(ppt,"Title and Content");

Choose a name to identify the target slide.

targetSlideName = "myTargetSlide";

Create a paragraph. Create an InternalLink object that specifies the target slide by name and append it to the paragraph.

p = Paragraph("This is a link to the slide with the name ");
linkObj = InternalLink(targetSlideName,targetSlideName);
append(p,linkObj);

Add the title and content to the slide.

replace(slide1,"Title","First slide");
replace(slide1,"Content",p);

Add a second slide to the presentation.

slide2 = add(ppt,"Title and Content");
replace(slide2,"Title","Second slide");

Add the target slide to the presentation. Set the Name property of the slide to the name specified in the InternalLink object.

slide3 = add(ppt,"Title and Content");
slide3.Name = targetSlideName;
replace(slide3,"Title","Third slide");
content = strcat("This is the target slide with the name ",targetSlideName);
replace(slide3,"Content",content);

Close and view the presentation.

close(ppt);
rptview(ppt);

Here are the generated slides:

This example links to a slide using an mlreportgen.ppt.InternalLink object that specifies the target slide number.

Create the presentation.

import mlreportgen.ppt.*
ppt = Presentation("myPresentation2.pptx");
open(ppt);

Add a slide to the presentation.

slide1 = add(ppt,"Title and Content");

Create a paragraph. Create an InternalLink object that specifies the target slide by its index and append the object to the paragraph.

p = Paragraph("This is a link to ");
link = InternalLink(3,"slide 3");
append(p,link);

Add the title and content to the slide.

replace(slide1,"Title","First slide");
replace(slide1,"Content",p);

Add a slide 2 to the presentation.

slide2 = add(ppt,"Title and Content");
replace(slide2,"Title","Second slide");

Add the target slide, slide 3, to the presentation.

slide3 = add(ppt,"Title and Content");
replace(slide3,"Title","Third slide");
replace(slide3,"Content","This is the target slide");

Close and view the presentation.

close(ppt);
rptview(ppt);

Here are the generated slides:

Version History

Introduced in R2021a