Main Content

publish

以指定格式生成 MATLAB 文件的视图

说明

示例

publish(file) 生成指定 MATLAB® 代码文件的视图并将其输出为可以共享的 HTML 格式的文件。publish 在名为 html 的子文件夹中保存该 HTML 文件和代码创建的所有图形文件。html 子文件夹的位置相对于 file 的位置。

例如,publish('C:\myMATLABfiles\myfile.m') 使用基础工作区运行 myfile.m 中的代码,然后将格式化的代码和结果保存在 C:\myMATLABfiles\html\myfile.html 中。

示例

publish(file,format) 以指定的文件格式生成指定 MATLAB 文件的视图。所有格式的文件都保存到 html 子文件夹中。

示例

publish(file,Name,Value) 通过一个或多个 name,value 对组参量指定的选项生成指定 MATLAB 文件的视图。

示例

publish(file,options) 使用 options 结构体生成指定 MATLAB 文件的视图。当您希望预配置并保存选项以便重复使用时,使用结构体指定选项很有用。options 结构体的字段和值与名称-值对组参量的名称和值对应。

示例

my_doc = publish(file,___) 生成指定 MATLAB 文件的视图,并返回生成的输出文件的路径。您可以将此语法与上述语法中的任何输入参量结合使用。

示例

全部折叠

创建一个 MATLAB 示例脚本的 HTML 视图,包括代码、结果和注释。使用 web 函数查看生成的文件。

publish("fourier_demo2.m");
web("html/fourier_demo2.html")

创建包含代码、结果和注释的 MATLAB 示例脚本的 Microsoft® Word 视图。将发布文件的路径保存到变量中。使用 winopen 函数查看生成的文件。

mydoc = publish("fourier_demo2.m","doc");
winopen(mydoc)

使用名称-值参量更改 MATLAB 示例脚本的 HTML 视图中已发布图窗窗口的外观。

使用值为 ''entireFigureWindow"figureSnapMethod" 名称-值参量以包含窗口装饰,并使图窗背景色与图窗的屏幕颜色相匹配。然后,使用 web 函数查看生成的文件。

publish("fourier_demo2.m","figureSnapMethod","entireFigureWindow");
web("html/fourier_demo2.html")

使用结构体创建 MATLAB 示例脚本的 Microsoft Word 视图,其中不显示脚本中的代码。当您希望预配置并保存选项以便重复使用时,将 options 指定为结构体很有用。

创建结构体 options,该结构体指定 formatshowcode 选项。

options.format = "doc";
options.showCode = false;

使用 options 中指定的选项创建示例的 Microsoft Word 视图。使用 winopen 函数查看生成的文件。

publish("fourier_demo2.m",options);
winopen("html/fourier_demo2.doc")

生成需要输入参量的 MATLAB 函数的 HTML 视图。

创建并保存函数 fact.m

%% FACT compute the factorial of a number
% FACT(N) computes the factorial of the number N and returns the results 
function f = fact(n)
    f = prod(1:n);
end

使用 publish 函数生成函数的 HTML 视图。使用 codeToEvaluate 名称-值参量设置输入参量 n 的值。然后,使用 web 函数查看生成的文件。

publish("fact.m","codeToEvaluate","fact(5);");
web("html/fact.html")

输入参数

全部折叠

MATLAB 文件名,指定为字符向量或字符串。file 可以包括完整路径或部分路径。

注意

当 MATLAB 发布文件时,它可覆盖输出文件夹中与 file 同名的现有文件。

示例: publish('myfile.m')

示例: publish('C:\myMATLABfiles\myfile.m')

已发布文件的输出格式,指定为下表中列出的值之一。

输出格式
'html'(默认值)超文本标记语言
'doc' Microsoft® Word
'latex'LaTeX
'ppt' Microsoft PowerPoint®
'xml'可扩展标记语言
'pdf'可移植文档格式 (PDF)

Microsoft WordMicrosoft PowerPoint 格式仅在 Windows® 平台上可用。

将输出格式指定为 Microsoft PowerPoint 或 LaTeX 时,MATLAB 不会保留语法高亮。

示例: publish('myfile.m','ppt');

已发布输出的选项,指定为结构体。要重复使用相同配置来发布多个 MATLAB 文件时,请使用 options 结构体代替名称-值对组参量。

options 结构体的字段和值与名称-值对组参量的名称和值对应。

例如,以下命令创建结构体 options,并指定 PDF 输出格式和输出文件夹 C:\myPublishedOutput

options = struct('format','pdf','outputDir','C:\myPublishedOutput')

名称-值参数

将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: 'format','pdf','showCode',false 指定 PDF 输出文件格式并从输出中排除代码。

输出选项

全部折叠

已发布文件的输出格式,指定为下表中列出的值之一。

输出格式
'html'(默认值)超文本标记语言 (HTML)
'doc' Microsoft Word
'latex'LaTeX
'ppt' Microsoft PowerPoint
'xml'可扩展标记语言
'pdf'可移植文档格式 (PDF)

Microsoft WordMicrosoft PowerPoint 格式仅在 Windows 平台上可用。

将输出格式指定为 Microsoft PowerPoint 或 LaTeX 时,MATLAB 不会保留语法高亮。

示例: publish('myfile.m','format','pdf')

用于保存已发布文档的输出文件夹,指定为字符向量。指定文件夹的完整路径。

示例: publish('myfile.m','outputDir','C:\myPublishedOutput')

将 MATLAB 文件发布为 HTML、XML 或 LaTeX 格式时使用的可扩展样式表语言 (XSL) 文件,指定为字符向量。指定 XSL 文件的完整路径。

示例: publish('myfile.m','stylesheet','C:\myStylesheet\stylesheet.xsl')

图窗选项

全部折叠

是否为已发布文档创建缩略图图像,指定为 truefalse。您可以使用生成的缩略图在 HTML 页面上显示文件的缩略表示形式。

已发布文档的图窗窗口外观,指定为下表中列出的值之一。图窗窗口外观包括绘图的背景色以及它是否包含窗口装饰(标题栏、工具栏、菜单栏和窗口边框)。

此选项在 MATLAB Online™ 中不可用。

窗口装饰背景色
 GUI图窗GUI图窗

'entireGUIWindow'(默认值)

已包含

不包含

与屏幕匹配

白色

'print'

不包含

不包含

白色

白色

'getframe'

不包含

不包含

与屏幕匹配

与屏幕匹配

'entireFigureWindow'

已包含

已包含

与屏幕匹配

与屏幕匹配

已发布文档中图像的图像文件格式,指定为下表中列出的值之一。有效图像格式的列表取决于指定的输出格式。

输出格式有效图像格式默认图像格式
Microsoft Word

可以导入已安装 Microsoft Office 版本的任何图片格式,包含 'png''jpg''bmp''tiff'。如果 'figureSnapMethod' 选项设置为 'print',则您还可以指定 'eps''epsc''eps2''ill''meta''pdf'

'png'
超文本标记语言 (HTML)

所有图像格式。

确保您用于查看和处理输出文件的工具可以显示指定的输出格式。

'png'
LaTeX

所有图像格式。

确保您用于查看和处理输出文件的工具可以显示指定的输出格式。

'epsc2'

在下列情况下,默认值更改为 'png'

  • figureSnapMethod'getframe'

  • figureSnapMethod'entireFigureWindow'

  • figureSnapMethod'entireGUIWindow' 且快照窗口是 GUI 窗口。

可移植文档格式 (PDF)

'bmp''jpg'

'bmp'
Microsoft PowerPoint

可以导入已安装 Microsoft Office 版本的任何格式,包含 'png''jpg''bmp''tiff'

'png'
可扩展标记语言 (XML)

所有图像格式。

确保您用于查看和处理输出文件的工具可以显示指定的图像格式。

'png'

已发布图像的最大图像高度,指定为下列值之一:

  • [](默认值)- 高度不受限制。当输出格式为 PDF 时,始终使用此值。

  • 正整数 - 以像素为单位的高度。

已发布图像的最大图像宽度,指定为下列值之一:

  • [](默认值)- 宽度不受限制。当输出格式为 PDF 时,始终使用此值。

  • 正整数 - 以像素为单位的宽度。

是否创建新图窗,指定为 truefalse。如果为 true 并且代码生成了图窗,则 MATLAB 会在发布前以默认大小创建一个具有白色背景的新图窗窗口。如果为 false,则 MATLAB 不创建图窗窗口。

如果要对发布的图窗应用不同的属性,则指定值 false 非常有用。例如,您可以打开一个图窗窗口,更改大小和背景色,然后发布您的代码。已发布文档中的图窗将使用您发布之前打开的图窗的特征。

代码选项

全部折叠

是否运行代码并在发布视图中包含 MATLAB 输出,指定为 truefalse

是否在发布期间捕获错误,指定为 truefalse。如果为 true 并且发生了错误,则 MATLAB 继续发布并将错误包含在发布文件中。如果为 false 并且发生了错误,则 MATLAB 在命令行中显示错误,并且不生成发布文件。

要在发布期间运行的其他代码,指定为字符向量。使用此选项可运行未包含在 MATLAB 文件中的代码。例如,发布函数时,可以设置输入参量的值。

如果未指定该选项,则 MATLAB 仅运行您正在发布的 MATLAB 文件中的代码。

示例: publish('myfunction.m','codeToEvaluate','myfunction(1,10)')

要包含在已发布文档中的最大输出行数,指定为下列值之一:

  • Inf(默认值)- MATLAB 在已发布文档中包含所有输出。

  • 非负整数 - MATLAB 在已发布文档中仅包含指定的行数。如果一个较小的代表性输出示例就能满足需求,则设置此选项很有用。

是否在已发布文件中包含代码,指定为 truefalse

如果输出格式为 HTML,MATLAB 将在已发布 HTML 文件的末尾处以注释的形式附上代码,即使您将 'showCode' 选项设置为 false 也是如此。将代码作为注释包含使 grabcode 函数可以从 HTML 文件中提取 MATLAB 代码,即使文件不显示该代码也是如此。由于 MATLAB 将代码作为注释包含,因此该代码不会显示在 Web 浏览器中。

提示

  • 要增强已发布文档的可读性并包含其他图像快照、外部文件内容和外部图像,请参阅发布标记

  • 生成实时脚本或实时函数 (.mlx) 的视图时,publish 函数不包含格式化文本。要生成整个实时脚本或实时函数的视图,请改用 export 函数。

  • 为了避免在发布 MATLAB 代码文件时出现重复的快照,在调用 publish 函数之前,请确保您的光标不在任何图窗上。将光标放在图窗上会导致图窗更新,并且 publish 函数会生成重复的快照。

版本历史记录

在 R2006a 之前推出