主要内容

记者是什么?

记者是MATLAB®对象中添加时生成格式化内容的对象MATLAB报告生成器™报告对象。MATLAB Report Generator提供了用于生成常见报表组件的报告器,如标题页、目录、章节、子节、图和MATLAB变量值。您可以自定义这些报告器的内容和外观。还可以创建自己的记者。对于内置Report API对象的列表,输入下面的MATLAB命令:

帮助mlreportgen.report

报告器和DOM对象

除了记者,MATLAB报告生成器提供另一组用于生成报告内容的对象。这些对象是文档对象模型(DOM)对象。它们实现了HTML、Word和其他文档创建软件使用的文档模型。该模型将文档定义为文档中常见的对象的层次结构,如文本字符串、段落、图像和表。DOM API包含生成这些基本文档对象的软件对象。对于DOM对象的列表,输入下面的MATLAB命令:

帮助mlreportgen.dom

相比之下,记者创建的是高层次的文档结构,如标题页、目录和章节,这出现在许多但不是所有类型的文档中。报告器的优点是,单个报告器可以创建需要许多DOM对象的内容。然而,报表生成器程序通常同时需要DOM和报告器对象。例如,章节报告器生成报表章节的标题和页面布局,但不生成其内容。DOM API提供了文本、段落、表、列表、图像和其他可以用来创建报告器内容的对象。

下面的MATLAB程序演示了如何使用报告器和DOM对象来创建PDF报告。该程序使用了DOM文本对象向章节添加文本块。本例中的所有其他对象(报告,TitlePage,TableOfContents,)是报告器对象。

rpt = mlreportgen.report.Report(“myreport”、“pdf”);追加(rpt mlreportgen.report。TitlePage('Title','My Report',... 'Author','Myself')) append(rpt,mlreportgen.report.TableOfContents) ch = mlreportgen.report.Chapter('Title','Sample Text'); append(ch,mlreportgen.dom.Text... ('Here is sample text using a DOM Text object.')) append(rpt,ch) close(rpt) rptview(rpt)

报告的标题页,标题是“My report”,作者是“Myself”,还有日期

列出一章的目录

第一章的标题是“样本文本”和文本,“这里是使用DOM文本对象的样本文本”。

记者元素

一个记者通常包括以下元素:

  • 定义外观、固定内容和记者生成的动态内容的孔的模板文档。报告器通常提供一组模板文件,每个模板文件对应支持的输出类型:Word、PDF和HTML。每个模板文件都包含一个模板库,供记者用于格式化其内容。例如,报表APITitlePageReporter使用名为TitlePage设置标题页的格式。的TitlePage模板存储在其模板文件的模板库中。您可以修改此模板以重新排列或向标题页添加内容。信息,请参阅模板

  • 属性,指定记者生成的动态内容。这些属性对应于报告器模板中的孔洞。报告器用相应属性的值填充模板孔。

  • 的MATLAB类,它定义了用于创建和操作报告器的报告器属性和方法。报告器类名称以前缀,mlreportgen.report。例如,扉页记者是mlreportgen.report.TitlePage。你可以在MATLAB脚本或函数的开头插入以下语句来省略前缀:

    进口mlreportgen.report。*
    同样地,你可以包括进口mlreportgen.dom。*使用简短的DOM类名。

  • 构造函数方法,它创建一个报告对象作为报告类的实例。构造函数的名称与类的名称相同。

  • DOM对象,它包含报告生成的内容。这个对象被称为报告器的实现。每个报告器都有一个getImpl方法,创建实现对象,这通常是一个DOMDocumentPart对象。

在MATLAB程序中使用记者

要在报告程序中生成内容,请遵循以下步骤:

这些步骤中描述的示例程序创建了一个只包含一个title页的简单文档。然而,这些步骤演示了创建完整报告的任务。完整的程序清单显示在步骤描述之后。

创建一个报表对象

创建一个Report对象(mlreportgen.report.Report)以包含报告生成的内容。报告对象使用DOM文档对象,以保存添加到报告中的记者生成的内容。此代码导入Report API包,使代码能够使用简短的类名。然后,它创建一个PDF报表对象(rpt)。

进口mlreportgen.report。*rpt= Report('myReport','pdf');

创建一个Reporter的实例

创建一个报告器类的实例,也就是说,使用它的构造函数实例化报告器。构造函数还可以设置它创建的报告器对象的属性。例如,这段代码创建了一个标题页报告器(tp),并将其标题作者属性。

tp = TitlePage('Title','My Report','Author','John Smith');

设置现有记者的属性

要在程序创建了一个报告器之后设置报告器属性,程序可以使用MATLAB点表示法。例如,这段代码设置副标题发布日期的属性TitlePage记者(tp)。

tp。字幕=“on My Project”;tp。发布日期=日期;

将报告器添加到报表中

要使用报告器生成内容,报告程序必须将报告器添加到报告对象,使用附加报表对象的方法。的附加方法通过调用getImpl记者的方法。的getImpl方法创建报告器的实现。然后,附加方法将实现添加到DOM中文档对象,它作为报表对象的实现。也可以使用附加方法向报表中添加DOM对象。但是,您不能添加另一个DOM文档一份报告。

例如,此代码添加标题页报告器(tp)到报告(rpt)。

追加(rpt, tp)

关闭报告对象

当报表程序完成向报表添加内容时,它必须关闭报表,使用关闭报表对象的方法。关闭报表将把报表内容写入由报表对象的构造函数指定的类型的文档文件,例如PDF。

关上(rpt)

这段代码是报告的完整程序,它只包括一个标题页。

进口mlreportgen.report。*rpt= Report('myReport','pdf'); tp = TitlePage('Title','My Report',... 'Author','John Smith'); tp.Subtitle = 'on My Project'; tp.PubDate = date; append(rpt,tp) close(rpt) rptview(rpt)

报告扉页,标题是“我对我的项目的报告”,作者是“约翰·史密斯”,以及日期

另请参阅

|||

相关的话题

Baidu
map