mlreportgen.dom.ImageMap class

Package: mlreportgen.dom
Superclasses:

Map of hyperlink areas in image

Description

Map of image areas, which are areas in an image that you can click to open content in a browser or to navigate to another location in the same page. You can create image maps in reports with PDF or HTML output. Define areas using mlreportgen.dom.ImageArea and append them to the map.

Construction

map = ImageMap() creates an empty image map. Use the ImageMap.append method to add image areas to the map.

Output Arguments

expand all

Map of hyperlink areas in image, returned as an mlreportgen.dom.ImageMap object.

Properties

expand all

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

Tag for the document element, specified as a character vector.

The DOM generates a session-unique tag when it creates the document element. Structure the tag as class:id, where class is the class of the element and id is the value of the Id property. You can specify a tag to replace the generated tag. Specifying your own tag can make it easier to identify where an issue occurred during document generation.

Methods

Method

Purpose

append

Append an image area to this image map.

clone

Use ImageMap.clone in a similar way you how you use Paragraph.clone.

Clone this image map.

Examples

collapse all

Define an ImageArea object that specifies the size and location of the area and the action that occurs when you click the area. Then append the area to an ImageMap object.

import mlreportgen.dom.*
d = Document('imageArea','pdf');

% Create a plot and save it as an image file
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y);
annotation('textbox', [0.2,0.4,0.1,0.1],...
           'string', 'Help on plot function');
saveas(gcf,'plot_img.png');

% Create the DOM image object and append it to your document
plot1 = Image('plot_img.png');
append(d,plot1);

% Define the area and link target using ImageArea
target = ['https://www.mathworks.com/help/matlab/ref/' ...
'plot.html?searchHighlight=plot'];
area1 = ImageArea( target, ...
'plot function help',160,340,383,392);

% Create the image map object and append the area to it
map = ImageMap();
append(map,area1);
plot1.Map = map;

close(d);
rptview(d.OutputPath);