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 视图,包括代码、结果和注释。

将示例文件 fourier_demo2.m 复制到您的当前文件夹。

filename = fullfile(matlabroot,'help','techdoc','matlab_env','examples','fourier_demo2.m');
copyfile(filename,'.','f')

使用 publish 函数运行该示例并生成示例的 HTML 视图。然后,使用 web 函数查看生成的文件。

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

生成 MATLAB 脚本的 Microsoft® Word 视图,包括代码、结果和注释。

将示例文件 fourier_demo2.m 复制到您的当前文件夹。

filename = fullfile(matlabroot,'help','techdoc','matlab_env','examples','fourier_demo2.m');
copyfile(filename,'.','f')

使用 publish 函数生成示例的 Microsoft Word 视图。然后,使用 winopen 函数查看生成的文件。

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

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

将示例文件 fourier_demo2.m 复制到您的当前文件夹。

filename = fullfile(matlabroot,'help','techdoc','matlab_env','examples','fourier_demo2.m');
copyfile(filename,'.','f')

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

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

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

将示例文件 fourier_demo2.m 复制到您的当前文件夹。

filename = fullfile(matlabroot,'help','techdoc','matlab_env','examples','fourier_demo2.m');
copyfile(filename,'.','f')

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

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

使用 publish 函数和在 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 脚本的 HTML 视图,并将已发布的 HTML 文件的路径保存为变量。

将示例文件 fourier_demo2.m 复制到您的当前文件夹。

filename = fullfile(matlabroot,'help','techdoc','matlab_env','examples','fourier_demo2.m');
copyfile(filename,'.','f')

使用 publish 函数生成示例的 HTML 视图,并将已发布的 HTML 文件的路径保存到变量 mydoc

mydoc = publish('fourier_demo2.m')
mydoc =

C:\myMATLABfiles\html\fourier_demo2.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')

名称-值对组参数

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

示例: '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 函数不包含格式化文本。要生成整个实时脚本或实时函数的视图,请改为导出文件。在实时编辑器选项卡的文件部分中,点击导出 ,并从可用的导出选项中进行选择。有关详细信息,请参阅共享实时脚本和函数

在 R2006a 之前推出