mlreportgen.report.Report 类
命名空间: mlreportgen.report
报告容器
描述
mlreportgen.report.Report
类的一个对象是一个报告容器,由报告器、MATLAB® 和 DOM 对象组成。使用 mlreportgen.report.Report
对象根据模板库中的模板生成 HTML、PDF 或 Word 报告。
注意
要创建包含 Simulink® 或 Stateflow® 内容的报告,请使用 slreportgen.report.Report
(Simulink Report Generator) 类。
mlreportgen.report.Report
类是一个 handle
类。
创建对象
描述
返回具有默认属性值的报告容器对象。report
= mlreportgen.report.Report
将 OutputPath 属性设置为 report
= mlreportgen.report.Report(path
)path
。
还将 TemplatePath 属性设置为 report
= mlreportgen.report.Report(path
,type
,template
)template
。
使用名称-值参量设置属性。您可以按任意顺序指定多个名称-值参量。report
= mlreportgen.report.Report(Name=Value
)
属性
生成的报告文件的路径,指定为字符向量或字符串标量。路径是报告输出文档在文件系统中的位置。该路径可以是完整路径,例如 "C:/myreports/reportA.docx"
。该路径也可以相对于当前 MATLAB 文件夹,例如 "reportA"
。如果文件名没有与 Type
属性相对应的文件扩展名,报告生成器将在报告文档关闭时添加相应的文件扩展名。
注意
在云驱动器(例如 MATLAB Drive™ 或 Microsoft® OneDrive™)上生成 PDF 报告可能会导致报告生成软件与云驱动器同步软件之间发生文件冲突,从而导致以下错误:
Error closing document package: Could not commit changes: removeAll failed: fl:filesystem:AccessDenied: C:\Users\jdoe\OneDrive\Documents\MATLAB\reports\temp_FO\stylesheets: Permission denied.
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
输出类型,指定为以下值之一:
"docx"
- Microsoft Word 文档。"html"
- HTML 报告,打包为一个压缩文件,包含报告的 HTML 文件、图像、样式表和 JavaScript® 文件。要将 HTML 报告生成为包含解压文件的文件夹,请将PackageType
属性设置为"unzipped"
或"both"
。"html-file"
- HTML 报告,由一个 HTML 文件组成,该文件包含报告的文本、样式表、JavaScript 和 base64 编码的图像。"pdf"
- PDF 文件。"pdfa"
- PDF/A 文件。 (自 R2025a 起)
如果使用 TemplatePath
属性指定模板,则 Type
的值必须与模板类型匹配。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
用于生成的文件的包装,指定为以下值之一:
值 | 支持的报告类型 | 描述 |
---|---|---|
|
| 将报告作为 ZIP 文件生成到 |
"unzipped" |
| 将报告作为单独的文件生成在具有 |
"both" |
| 生成压缩和解压缩的输出。 |
"single-file" |
| 将报告生成为单个文件。 |
提示
要生成一个无需解压缩即可打开的 HTML 报告,当 Type
属性为 "html"
时,将 PackageType
设置为 "unzipped"
或 "both"
。在包含生成文件的文件夹中,打开 root.html
文件。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
数据类型: char
| string
用于格式化此报告的模板的位置,指定为字符向量或字符串标量。您可以使用此属性为报告指定自定义模板。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
区域设置或语言,指定为字符向量或字符串标量,由要生成此报告的区域设置的 ISO_639-1 双字母语言代码组成。默认值 []
指定系统区域设置的语言,例如英语系统上的英语。报告 API 使用语言代码将章节标题前缀翻译为指定语言环境的语言。以下语言的翻译已提供:
"af"
"ca"
"cs"
"da"
"de"
"el"
"en"
"es"
"et"
"eu"
"fi"
"fr"
"hu"
"id"
"it"
"ja"
"ko"
"nl"
"nn"
"no"
"pl"
"pt"
"ro"
"ru"
"sk"
"sl"
"sr"
"sv"
"tr"
"uk"
"xh"
"zh"
.如果您指定不受支持的区域设置,则使用英语版本。如需更多信息,请参阅维基百科网站上的 ISO_639-1 代码列表。
相关示例,请参阅指定章节标题前缀的区域设置。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
调试模式,指定为数值或逻辑值 1
(true
) 或 0
(false
)。如果将 Debug
设置为 true
或 1
,则报告的临时文件将存储在报告文件夹的子文件夹中,并且在报告关闭时不会被删除。
属性:
GetAccess | public |
SetAccess | public |
数据类型: logical
此报告的页面布局选项,指定为 mlreportgen.report.ReportLayout
对象。Layout
属性的默认值是一个具有默认值的 mlreportgen.report.ReportLayout
对象。通过修改属性值来自定义页面布局。相关示例,请参阅创建景观报告。
mlreportgen.report.TitlePage
、mlreportgen.report.TableOfContents
和 mlreportgen.report.Chapter
类的对象的 Layout
属性指定的布局选项可以覆盖 mlreportgen.report.Report
对象的 Layout
属性指定的页面布局属性。
注意
Layout
属性仅适用于 PDF 和 Word 报告。
属性:
GetAccess | public |
SetAccess | protected |
方法
open | 打开报告 |
append | 添加内容以报告 |
add | (不推荐)添加要报告的内容 |
close | 关闭并生成报告 |
rptview | 在查看器中打开生成的报告文件 |
mlreportgen.report.Report.createTemplate | 创建报告模板 |
mlreportgen.report.Report.customizeReport | 创建从报告类派生的类 |
mlreportgen.report.Report.getClassFolder | 报告类定义文件位置 |
getTempPath | 报告临时目录路径 |
generateFileName | 生成临时报告文件名 |
getReportLayout | 报告的当前页面布局 |
fill | 填补报告模板空位 |
getContext | 获取报告上下文值 |
setContext | 设置报告上下文值 |
removeContext | 删除报告上下文值 |
ispdf | 检查 PDF 报告 |
isdocx | 检查 Word 报告 |
ishtml | 检查多文件 HTML 报告 |
ishtmlfile | 检查单文件 HTML 报告 |
示例
使用报告 API 创建报告。
导入 DOM 和报告 API 命名空间,这样您就不必使用完全限定的类名。
import mlreportgen.report.* import mlreportgen.dom.*
创建报告容器。
rpt = Report('My Report','pdf');
在报告中添加标题页、目录和章节。本章包含两节,每节包含一张图片。
append(rpt,TitlePage(Title='My Report')); append(rpt,TableOfContents); ch = Chapter('Images'); append(ch,Section(Title='Boeing 747',... Content=Image(which('b747.jpg')))); append(ch,Section(Title='Peppers',... Content=Image(which('peppers.png')))); append(rpt,ch); close(rpt); rptview(rpt);
使用报告 API 创建具有横向方向的报告。
导入报告 API 命名空间,这样您就不必使用长而完全限定的类名。
import mlreportgen.report.*
创建报告容器。在分配给 Layout
属性的 mlreportgen.report.ReportLayout
对象中,将 Landscape
属性设置为 true
。
rpt = Report("myreport","pdf"); rpt.Layout.Landscape = true;
向报告添加内容。生成并查看报告。
append(rpt,TitlePage(Title="My Landscape Report")); append(rpt,TableOfContents); append(rpt,Chapter(Title="Tests")); append(rpt,Chapter(Title="Unit Tests")); close(rpt); rptview(rpt);
通过设置 Locale
属性,将报告的章节标题前缀设置为日语。
import mlreportgen.report.* rpt = Report("Japanese Report"); rpt.Locale = "ja"; house = char(23478); % Kanji character for house append(rpt, Chapter(house)); close(rpt); rptview(rpt);
版本历史记录
在 R2017b 中推出您可以以 PDF/A 格式输出 DOM 和报告 API 报告。
从 R2020b 开始,使用 append
方法(而不是 add
方法)向这些报告 API 类的对象添加内容:
mlreportgen.report.Report
mlreportgen.report.Chapter
mlreportgen.report.Section
slreportgen.report.Report
要向 DOM API 对象添加内容(例如 mlreportgen.dom.Paragraph
对象),请继续使用 DOM 对象的 append
方法。使用 append
向报告 API 对象添加内容的优势在于,您使用与向 DOM API 对象添加内容相同的方法名称。
没有计划删除 Report
、Chapter
或 Section
类的 add
方法。使用 add
方法的报告 API 程序将继续运行。
要更新现有代码,请将方法名称 add
替换为 append
,如表中示例所示。
不推荐 | 推荐 |
---|---|
import mlreportgen.report.* import mlreportgen.dom.* rpt = Report("My Report","pdf"); ch = Chapter("My Chapter"); sect = Section("My Section"); para = Paragraph("My Content "); append(para,"more Content"); add(sect,para); add(ch,sect); add(rpt,ch); close(rpt); rptview(rpt); | import mlreportgen.report.* import mlreportgen.dom.* rpt = Report("My Report","pdf"); ch = Chapter("My Chapter"); sect = Section("My Section"); para = Paragraph("My Content "); append(para,"more Content"); append(sect,para); append(ch,sect); append(rpt,ch); close(rpt); rptview(rpt); |
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)