主要内容

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

将 HTML 内容转换为 DOM 对象

您可以将 HTML 内容转换为可添加到报告中的 DOM 对象。HTML 内容可以是字符串也可以是文件。要转换字符串中的 HTML 内容,请使用以下方法之一:

请参阅将 HTML 内容转换为字符串

要转换文件中的 HTML 内容,请使用以下方法之一:

请参阅转换 HTML 文件内容

转换之前准备 HTML

MATLAB® Report Generator™ mlreportgen.dom.HTMLmlreportgen.dom.HTMLFile 对象通常无法接受第三方应用程序的原始 HTML 输出,例如 Microsoft® Word,这些应用程序会将原生文档导出为 HTML 标记。在这些情况下,您的报告 API 报告生成程序可以使用 mlreportgen.utils.html2dom.prepHTMLStringmlreportgen.utils.html2dom.prepHTMLFile 函数准备原始 HTML 以供 mlreportgen.dom.HTMLmlreportgen.dom.HTMLFile 对象使用。这些函数:

  • 通过使用 HTML 输出设置调用 mlreportgen.utils.tidy 来纠正无效标记。

  • 使用 MATLAB HTML 查看器将整理后的标记转换为 HTML DOM 文档。请参阅https://www.w3.org/TR/WD-DOM/introduction.html

    MATLAB HTML 查看器根据输入 HTML 指定的内部和外部样式表以及元素的样式属性计算 HTML 输入中元素的 CSS 属性。CSS 属性计算支持所有有效的 CSS 样式表选择器,包括 mlreportgen.dom.HTMLmlreportgen.dom.HTMLFile 对象不直接支持的选择器。

  • 将 HTML DOM 文档转换为 mlreportgen.dom.HTMLmlreportgen.dom.HTMLFile 对象支持的 HTML 标记。每个元素的 style 属性指定了 MATLAB HTML 查看器计算的元素 CSS 属性。

通常,您的程序必须进一步处理准备好的 HTML 以删除有效但不想要的对象,例如原始内容中的换行符。

有关从文件准备 HTML 内容的示例,请参阅 准备 HTML 以转换为 DOM 对象

将 HTML 内容转换为字符串

要将字符串中的 HTML 内容转换为 DOM 对象,请创建一个 mlreportgen.dom.HTML 对象并将该对象添加到报告中。

import mlreportgen.dom.*;
d = Document("MyDoc","docx");
htmlObj = HTML("<p><b>Hello </b> <i style="color:green">World</i></p>");
append(d,htmlObj);
close(d);
rptview(d);

或者,使用 addHTML 方法转换 HTML 并将其添加到文档中。该方法返回一个 HTML 对象。

import mlreportgen.dom.*;
d = Document("MyDoc","docx");
addHTML(d, "<p><b>Hello </b> <i style="color:green">World</i></p>");
close(d);
rptview(d);

一旦创建了 HTML 对象,您就可以向该对象追加更多 HTML 内容。例如:

import mlreportgen.dom.*;
d = Document("MyDoc","docx");
htmlObj = HTML("<p><b>Hello </b> <i style="color:green">World</i></p>");

append(htmlObj,"<p>This is <u>me</u> speaking</p>");
append(d,htmlObj);

close(d);
rptview(d);

要在报告中多次追加 HTML 对象的内容,请将 clone 方法与 HTML 对象一起使用。然后,将克隆追加到报告中。

转换 HTML 文件内容

要将 HTML 文件内容转换为 DOM 对象,请创建一个 mlreportgen.dom.HTMLFile 对象并将该对象添加到报告中。

创建一个包含以下 HTML 的文件 MyHTML.html

<html><p style="color:green;font-family:arial">Hello World</p></html>

根据 HTML 文件的内容生成 PDF 报告。

import mlreportgen.dom.*;
d = Document("MyPDF","pdf");
htmlObj = HTMLFile("MyHTML.html");
append(d,htmlObj);
close(d);
rptview(d);

或者,使用 addHTMLFile 方法转换 HTML 并将其添加到文档中。

import mlreportgen.dom.*;
d = Document("MyPDF","pdf");
addHTMLFile(d,"MyHTML.html");
close(d);
rptview(d);

另请参阅

| | | | | |

主题