主要内容

本页采用了机器翻译。点击此处可查看英文原文。

mlreportgen.dom.Table 类

命名空间: mlreportgen.dom

非正式表

描述

使用 mlreportgen.dom.Table 类的实例定义一个非正式表,即没有单独的表头和表脚部分的表。

要了解可以将 mlreportgen.dom.Table 对象追加到哪些 DOM 对象,请参阅将 mlreportgen.dom.Table 对象追加到 DOM 类对象上

mlreportgen.dom.Table 类是一个 handle 类。

类属性

HandleCompatible
true
ConstructOnLoad
true

创建对象

描述

tableObj = mlreportgen.dom.Table(nCols) 创建一个空的非正式表。

tableObj = mlreportgen.dom.Table(array) 创建一个非正式的表,其内容由 array 指定。构造函数将基本的 MATLAB® 类型转换为相应的 DOM 类型。例如,它将字符向量更改为 mlreportgen.dom.Text 对象。

示例

tableObj = mlreportgen.dom.Table(array,style) 还将非正式表的格式设置为 style。指定的样式必须在用于创建此表所属文档的模板中进行定义。

注意

Microsoft® Word 会自动将具有匹配样式名称的连续表合并为一个表。要在 DOCX 报告中将连续的表作为单独的表呈现,请使用以下选项之一:

  • 将连续表的样式名称设置为不同的值。样式名称必须在文档模板中定义。要修改模板中的样式,请参阅 修改 Microsoft Word 模板中的样式

  • 在表之间插入内容。例如,在表之间插入一个空的 mlreportgen.dom.Paragraph 元素。

输入参量

全部展开

表体内容,指定为:

  • 二维数值数组

  • 二维分类数组

  • 二维字符串数组

  • 包含以下类型的数组、数据类型或对象的二维元胞数组:

    • 字符向量

    • 字符串标量

    • 一维或二维元胞数组

    • 数据类型为 double 的项目

    • mlreportgen.dom.CharEntity 对象

    • mlreportgen.dom.ExternalLink 对象

    • mlreportgen.dom.FormalTable 对象

    • mlreportgen.dom.Image 对象

    • mlreportgen.dom.InternalLink 对象

    • mlreportgen.dom.LineBreak 对象

    • mlreportgen.dom.OrderedList 对象

    • mlreportgen.dom.Paragraph 对象

    • mlreportgen.dom.Table 对象

    • mlreportgen.dom.Text 对象

    • mlreportgen.dom.UnorderedList 对象

属性

全部展开

背景色,指定为包含 CSS 颜色名称、十六进制 RGB 值或十进制 RGB 值的字符向量或字符串标量

格式
CSS 颜色名称指定一个 CSS 颜色名称。有关 CSS 颜色名称的列表,请参阅 https://www.w3.org/wiki/CSS/Properties/color/keywords
十六进制 RGB 值使用格式 "#RRGGBB"。使用 # 作为第一个字符,并使用两位十六进制数作为红色、绿色和蓝色的值。您可以使用大写或小写字母。
十进制 RGB 颜色值请使用格式 "rgb(r,g,b)",其中 rgb 是以逗号分隔的正整数,分别表示红色、绿色和蓝色的值。每个值的范围必须介于 0255 之间。

设置 BackgroundColor 属性会将 mlreportgen.dom.BackgroundColor 格式的对象添加到 Style 属性。将 BackgroundColor 属性设置为空值将删除该对象。

示例: "red" 使用 CSS 颜色名称指定红色。

示例: "#0000ff" 使用十六进制 RGB 值指定蓝色。

示例: "rgb(128,0,128)" 使用十进制 RGB 颜色值指定紫色。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

要绘制的边框类型,指定为以下值之一:

边框样式描述支持在 Microsoft Word 中使用。支持 HTML 和 PDF
"dashed"虚线
"dashdotstroked"斜划线和点交替出现的线
"dashsmallgap"划线之间有小间隙的虚线
"dotted"点线
"dotdash"点划线交替出现的线
"dotdotdash"双点和划线交替出现的线
"double"双线
"doublewave"双波浪线
"groove"三维效果凹槽线
"hidden"

无线条

当存在冲突的边框样式时,"hidden" 边框样式将优先于冲突的边框样式,导致不显示边框线。

"inset"三维效果线
"none"

无线条

当边框样式发生冲突时,冲突的边框样式将优先于 "none",从而导致冲突的边框样式显示出来。

"outset"三维效果线
"ridge"三维效果脊状线
"single"单线
"solid"单线
"thick"粗线
"thickthinlargegap"粗划线和细划线交替,间隙较大
"thickthinmediumgap"粗划线和细划线交替,间隙适中
"thickthinsmallgap"粗划线和细划线交替,间隙较小
"thinthicklargegap"细划线和粗划线交替,间隙较大
"thinthickmediumgap"细划线和粗划线交替,间隙适中
"thinthicksmallgap"细划线和粗划线交替,间隙较小
"thinthickthinlargegap"细划线和粗划线交替,间隙较大
"thinthickthinmediumgap"细划线和粗划线交替,间隙适中
"thinthickthinsmallgap"细划线和粗划线交替,间隙较小
"threedemboss"浮雕效果线
"threedengrave"雕刻效果线
"triple"三线
"wave"波浪线

注意

对于 Microsoft Word 报告,当您将 mlreportgen.dom.Border 对象分配给 mlreportgen.dom.TableHeaderEntrymlreportgen.dom.TableEntrymlreportgen.dom.HorizontalRule 对象的 Style 属性时,报告器不支持此属性的 "inset""outset" 样式。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

是否将相邻单元格的边界合并为单一边界,指定为:

  • "on" - 将相邻单元格的边框合并为一个边框

  • "off" - 保持相邻单元格的边界

注意

此属性仅适用于 HTML 文档。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

边框颜色,指定为字符向量或字符串标量,其中包含 CSS 颜色名称、十六进制 RGB 值或十进制 RGB 值

格式
CSS 颜色名称指定一个 CSS 颜色名称。有关 CSS 颜色名称的列表,请参阅 https://www.w3.org/wiki/CSS/Properties/color/keywords
十六进制 RGB 值使用格式 "#RRGGBB"。使用 # 作为第一个字符,并使用两位十六进制数作为红色、绿色和蓝色的值。您可以使用大写或小写字母。
十进制 RGB 颜色值请使用格式 "rgb(r,g,b)",其中 rgb 是以逗号分隔的正整数,分别表示红色、绿色和蓝色的值。每个值的范围必须介于 0255 之间。

示例: "red" 使用 CSS 颜色名称指定红色。

示例: "#0000ff" 使用十六进制 RGB 值指定蓝色。

示例: "rgb(128,0,128)" 使用十进制 RGB 颜色值指定紫色。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表边框宽度,指定为字符向量或字符串标量,其中包含一个数字,后跟一个计量单位的缩写。例如,"10px" 指定 10 像素。有效的缩写是:

  • "px" - 像素

  • "cm" - 厘米

  • "in" - 英寸

  • "mm" - 毫米

  • "pc" - 派卡

  • "pt" - 磅

您也可以通过省略单位来指定像素值。例如,"5" 指定 5 像素。

示例: "2pt"

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表或表部分列之间的分隔线样式,指定为以下值之一:

边框样式描述支持在 Microsoft Word 中使用。支持 HTML 和 PDF
"dashed"虚线
"dashdotstroked"斜划线和点交替出现的线
"dashsmallgap"划线之间有小间隙的虚线
"dotted"点线
"dotdash"点划线交替出现的线
"dotdotdash"双点和划线交替出现的线
"double"双线
"doublewave"双波浪线
"groove"三维效果凹槽线
"hidden"

无线条

当存在冲突的边框样式时,"hidden" 边框样式将优先于冲突的边框样式,导致不显示边框线。

"inset"三维效果线
"none"

无线条

当边框样式发生冲突时,冲突的边框样式将优先于 "none",从而导致冲突的边框样式显示出来。

"outset"三维效果线
"ridge"三维效果脊状线
"single"单线
"solid"单线
"thick"粗线
"thickthinlargegap"粗划线和细划线交替,间隙较大
"thickthinmediumgap"粗划线和细划线交替,间隙适中
"thickthinsmallgap"粗划线和细划线交替,间隙较小
"thinthicklargegap"细划线和粗划线交替,间隙较大
"thinthickmediumgap"细划线和粗划线交替,间隙适中
"thinthicksmallgap"细划线和粗划线交替,间隙较小
"thinthickthinlargegap"细划线和粗划线交替,间隙较大
"thinthickthinmediumgap"细划线和粗划线交替,间隙适中
"thinthickthinsmallgap"细划线和粗划线交替,间隙较小
"threedemboss"浮雕效果线
"threedengrave"雕刻效果线
"triple"三线
"wave"波浪线

注意

对于 Microsoft Word 报告,当您将 mlreportgen.dom.Border 对象分配给 mlreportgen.dom.TableHeaderEntrymlreportgen.dom.TableEntrymlreportgen.dom.HorizontalRule 对象的 Style 属性时,报告器不支持此属性的 "inset""outset" 样式。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表列分隔线的线条颜色,指定为包含 CSS 颜色名称、十六进制 RGB 值或十进制 RGB 值的字符向量或字符串标量

格式
CSS 颜色名称指定一个 CSS 颜色名称。有关 CSS 颜色名称的列表,请参阅 https://www.w3.org/wiki/CSS/Properties/color/keywords
十六进制 RGB 值使用格式 "#RRGGBB"。使用 # 作为第一个字符,并使用两位十六进制数作为红色、绿色和蓝色的值。您可以使用大写或小写字母。
十进制 RGB 颜色值请使用格式 "rgb(r,g,b)",其中 rgb 是以逗号分隔的正整数,分别表示红色、绿色和蓝色的值。每个值的范围必须介于 0255 之间。

示例: "red" 使用 CSS 颜色名称指定红色。

示例: "#0000ff" 使用十六进制 RGB 值指定蓝色。

示例: "rgb(128,0,128)" 使用十进制 RGB 颜色值指定紫色。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表列分隔线的宽度,指定为字符向量或字符串标量,其中包含一个数字,后跟一个计量单位的缩写。有效的缩写是:

  • "px" - 像素

  • "cm" - 厘米

  • "in" - 英寸

  • "mm" - 毫米

  • "pc" - 派卡

  • "pt" - 磅

您也可以通过省略单位来指定像素值。例如,"5" 指定 5 像素。

示例: "10pt" 指定 10 磅

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表中列组的属性,指定为 mlreportgen.dom.TableColSpecGroup 对象数组。第一个对象应用于第一组列,第二个对象应用于第二组列,依此类推。使用 Span 对象的 TableColSpecGroup 属性指定属于每个组的列数。例如,如果第一个对象的跨度为 2,则它适用于前两列。如果第二组的跨度为 3,则它将应用于接下来的三列,依此类推。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

文本流方向,指定为以下值之一:

  • "ltr" - 文本从左到右流动

  • "rtl" - 文本从右向左流动

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表的水平对齐方式,指定为以下值之一:

  • "center"

  • "left"

  • "right"

注意

要防止 PDF 报告中大型表溢出,请设置 Width 属性。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表内容是否保留在同一页上,指定为逻辑 1 (true) 或 0 (false)。当您指定:。默认值为空,相当于 true

  • 1 (true) - 表内容保持在同一页上

  • 0 (false) - 表内容可延续至下一页。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: logical

表列的数量,指定为整数。要指定列数,请使用语法 mlreportgen.dom.Table(nCols) 创建一个表。否则,Table 构造函数根据表内容确定列数。如果向表中添加行或向行中添加条目,且列数发生变化,则 NCols 属性值将更新。如果各行所含条目数并不全部相同,则表条目数最多的行将决定表中的列数。

属性:

GetAccess
public
SetAccess
private
NonCopyable
true

数据类型: uint64

表行数,指定为整数。Table 构造函数从表内容中确定行数。如果向表中添加行,则 NRows 属性的值将会更新。

属性:

GetAccess
public
SetAccess
private
NonCopyable
true

数据类型: uint64

表的左边距,指定为字符向量或字符串标量,包含一个数字和一个计量单位的缩写。有效的缩写是:

  • "px" - 像素

  • "cm" - 厘米

  • "in" - 英寸

  • "mm" - 毫米

  • "pc" - 派卡

  • "pt" - 磅

您也可以通过省略单位来指定像素值。例如,"5" 指定 5 像素。

示例: "10pt" 指定 10 磅

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表或表部分行之间的分隔线样式,指定为以下值之一:

边框样式描述支持在 Microsoft Word 中使用。支持 HTML 和 PDF
"dashed"虚线
"dashdotstroked"斜划线和点交替出现的线
"dashsmallgap"划线之间有小间隙的虚线
"dotted"点线
"dotdash"点划线交替出现的线
"dotdotdash"双点和划线交替出现的线
"double"双线
"doublewave"双波浪线
"groove"三维效果凹槽线
"hidden"

无线条

当存在冲突的边框样式时,"hidden" 边框样式将优先于冲突的边框样式,导致不显示边框线。

"inset"三维效果线
"none"

无线条

当边框样式发生冲突时,冲突的边框样式将优先于 "none",从而导致冲突的边框样式显示出来。

"outset"三维效果线
"ridge"三维效果脊状线
"single"单线
"solid"单线
"thick"粗线
"thickthinlargegap"粗划线和细划线交替,间隙较大
"thickthinmediumgap"粗划线和细划线交替,间隙适中
"thickthinsmallgap"粗划线和细划线交替,间隙较小
"thinthicklargegap"细划线和粗划线交替,间隙较大
"thinthickmediumgap"细划线和粗划线交替,间隙适中
"thinthicksmallgap"细划线和粗划线交替,间隙较小
"thinthickthinlargegap"细划线和粗划线交替,间隙较大
"thinthickthinmediumgap"细划线和粗划线交替,间隙适中
"thinthickthinsmallgap"细划线和粗划线交替,间隙较小
"threedemboss"浮雕效果线
"threedengrave"雕刻效果线
"triple"三线
"wave"波浪线

注意

对于 Microsoft Word 报告,当您将 mlreportgen.dom.Border 对象分配给 mlreportgen.dom.TableHeaderEntrymlreportgen.dom.TableEntrymlreportgen.dom.HorizontalRule 对象的 Style 属性时,报告器不支持此属性的 "inset""outset" 样式。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表行分隔线的线条颜色,指定为包含 CSS 颜色名称或十六进制 RGB 值的字符向量或字符串标量。

格式
CSS 颜色名称指定一个 CSS 颜色名称。有关 CSS 颜色名称的列表,请参阅 https://www.w3.org/wiki/CSS/Properties/color/keywords
十六进制 RGB 值使用格式 "#RRGGBB"。使用 # 作为第一个字符,并使用两位十六进制数作为红色、绿色和蓝色的值。您可以使用大写或小写字母。
十进制 RGB 颜色值请使用格式 "rgb(r,g,b)",其中 rgb 是以逗号分隔的正整数,分别表示红色、绿色和蓝色的值。每个值的范围必须介于 0255 之间。

示例: "red" 使用 CSS 颜色名称指定红色。

示例: "#0000ff" 使用十六进制 RGB 值指定蓝色。

示例: "rgb(128,0,128)" 使用十进制 RGB 颜色值指定紫色。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

行分隔符的宽度,指定为字符向量或字符串标量,其中包含一个数字,后跟一个计量单位的缩写。例如,"10px" 指定 10 像素。有效的缩写是:

  • "px" - 像素

  • "cm" - 厘米

  • "in" - 英寸

  • "mm" - 毫米

  • "pc" - 派卡

  • "pt" - 磅

您也可以通过省略单位来指定像素值。例如,"5" 指定 5 像素。

示例: "5pt"

属性:

NonCopyable
true

数据类型: char | string

表条目的水平对齐方式,指定为以下值之一:

  • "center"

  • "left"

  • "right"

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表单元格内容的垂直对齐方式,指定为以下值之一:

  • "top"

  • "middle"

  • "bottom"

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表条目的内边距,指定为字符向量或字符串标量,其中包含一个数字,后跟一个计量单位的缩写。有效的缩写是:

  • "px" - 像素

  • "cm" - 厘米

  • "in" - 英寸

  • "mm" - 毫米

  • "pc" - 派卡

  • "pt" - 磅

您也可以通过省略单位来指定像素值。例如,"5" 指定 5 像素。

示例: "10px" 指定 10 像素

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

表条目使用的样式,指定为格式对象元胞数组。此属性指定的样式适用于表条目内容,而不适用于条目本身。例如,您可以使用此属性来定义表条目的字体大小,但不能定义条目边框的类型或颜色。要指定边框,请设置每个条目的 Style 属性。

注意

请小心,不要无意中覆盖该属性的先前设置。例如,设置表属性 TableEntriesHAlign 会将 HAlign 格式对象追加到此属性。要避免覆盖此属性,请在设置其他将格式追加到此属性的表属性之前设置此属性。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: cell

表的宽度,指定为字符向量或字符串标量,其中包含一个数字,后跟一个计量单位的缩写。例如,“100%”指定 PDF 报告中页面宽度的 100%,Word 报告中页面宽度的 100% 减去边距。有效的缩写包括:

  • 不使用缩写 - 像素

  • px - 像素

  • cm - 厘米

  • in - 英寸

  • mm - 毫米

  • pc - 派卡

  • pt - 磅

  • % - 百分比

示例: "5pt" 指定五磅

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

样式表中定义的样式名称,指定为字符向量或字符串标量。样式名称是此元素所追加到的文档或文档部件的样式表中指定的样式的名称。指定的样式定义了该元素在输出文档中的外观,除非该元素的 Style 属性指定的格式覆盖了该样式。要了解有关使用样式表的更多信息,请参阅 使用样式表样式

注意

Microsoft Word 报告会忽略文档模板中未定义的样式名称。有关 Microsoft Word 模板的详细信息,请参阅DOM API 报告程序模板

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

此文档元素对象的格式规范,指定为 DOM 格式对象元胞数组。此属性指定的格式将覆盖此元素的 StyleName 属性指定的相应格式。不适用于此文档元素对象的格式将被忽略。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: cell

文档元素的自定义属性,指定为 mlreportgen.dom.CustomAttribute 对象数组。自定义属性必须被此对象所追加到的文档元素的输出格式支持。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

此对象的父对象,指定为文档元素对象。一个文档元素必须只有一个父元素。

属性:

GetAccess
public
SetAccess
private
NonCopyable
true

此对象的子对象,指定为文档元素对象数组。此属性包含使用 append 方法追加的文档元素对象。

属性:

GetAccess
public
SetAccess
private
NonCopyable
true

标记,指定为字符向量或字符串标量。DOM API 在创建此对象的过程中生成一个会话唯一标记。生成的标记形式为 CLASS:ID,其中 CLASS 是对象类,ID 是对象的 Id 属性的值。使用此值来帮助确定在文档生成过程中出现的问题的位置。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

目标标识符,指定为字符向量或字符串标量。DOM API 在创建文档元素对象时会生成一个会话唯一标识符。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

数据类型: char | string

方法

全部展开

示例

全部折叠

在此示例中,您使用 Table 对象创建一个表并指定其属性。

导入 DOM API 命名空间,这样您就不必使用长而完全限定的名称。

import mlreportgen.dom.*;

创建一个 Document 对象并打开它。

d = Document("myreport","html");
open(d); 

创建一个表对象并使用 5×5 的 MATLAB 数组指定其内容。表对象将数组转换为相同维度的 DOM 对象表。

t = Table(magic(5));

指定行高。

t.Style = {RowHeight("1in")};

指定行和列分隔线的宽度和样式。

t.Border = "solid";
t.BorderWidth = "1px";
t.ColSep = "solid";
t.ColSepWidth = "1";
t.RowSep = "solid";
t.RowSepWidth = "1";

设置表条目的样式。

t.TableEntriesStyle = [t.TableEntriesStyle ...
    {FontFamily("Arial"),Width("1in"),Color("red"),Bold}];

设置表中文本的水平和垂直对齐方式。

t.TableEntriesHAlign = "center";
t.TableEntriesVAlign = "middle";

将表添加到文档中。

append(d,t);

关闭文档并查看报告。

close(d);
rptview(d);

详细信息

提示

  • 当您在表条目中包含大量内容时,表可能无法完全显示在报告页面上。如果某个表无法完全显示在 DOCX 报告页面上,Microsoft Word 将无法打开该报告。为确保表能适配 DOCX 报告,请设置内容较多的表条目的宽度和高度。要设置宽度,请使用 mlreportgen.dom.Width 类。要设置高度,请使用 mlreportgen.dom.Height 类。为避免删除现有格式,请将新的表条目样式与现有样式合并:

    te = TableEntry(domObj);
    te.Style = [te.Style, {Width("1in"), Height("1in")}];
    append(row,te);
    若要将该格式应用于表中的所有表条目,请使用表对象的 TableEntriesStyle 属性。

版本历史记录

在 R2015b 中推出

全部展开