В этом примере показов, как подготовить HTML содержимого перед преобразованием в MATLAB® Report Generator™ внутренней модели объекта документа (DOM). Пример создает таблицу стилей CSS и HTML файла, которая использует таблицу стилей. В примере используется mlreportgen.utils.html2dom.prepHTMLFile
функция для подготовки содержимого файла HTML так, чтобы его можно было преобразовать в mlreportgen.dom.HTMLFile
объект. Функция приводит в порядок HTML и преобразует HTML в разметку, которая поддерживается mlreportgen.dom.HTMLFile
объект. Смотрите раздел Подготовка HTML перед преобразованием. Чтобы подготовить HTML содержимого, которая находится в строке, используйте mlreportgen.utils.html2dom.prepHTMLString
.
Составьте таблицу стилей CSS, myCSS.css
, чтобы указать, что текст в абзаце является красным.
p { color: red; }
Создайте файл, myHTML.html
, который содержит этот HTML:
<html> <head> <link rel="stylesheet" type="text/css" href="myCSS.css" > </head> <body> <p> Hello World</p> </body> </html>
HTML не может использоваться MATLAB Report Generator DOM HTMLFile
объект, потому что link
элемент не закрыт должным образом. Косая черта (/
) перед закрывающей угловой скобкой (>
) отсутствует.
Попытайтесь преобразовать HTML в mlreportgen.dom.HTMLFile
объект.
import mlreportgen.dom.* d = Document('test','pdf'); htmlObj = HTMLFile('myHTML.html'); append(d,htmlObj); close(d); rptview(d);
Error using mlreportgen.dom.HTMLFile HTML error: expected end of tag 'link'
Очистить HTML при помощи mlreportgen.utils.tidy
. Эта функция не форматирует элементы HTML, используя форматирование в таблице стилей.
import mlreportgen.dom.* import mlreportgen.utils.* d = Document('test','pdf'); tidy('myHTML.html'); htmlObj = HTMLFile('myHTML-tidied.html'); append(d,htmlObj); close(d); rptview(d);
В сгенерированном отчете текст черный, а не красный.
Использовать mlreportgen.utils.html2dom.prepHTMLFile
для приведения в порядок HTML и форматирования элементов HTML в соответствии с таблицей стилей.
import mlreportgen.dom.* import mlreportgen.utils.html2dom.* d = Document('test','pdf'); preppedHTMLFile = prepHTMLFile('myHTML.html','mypreppedHTML.html'); htmlObj = HTMLFile(preppedHTMLFile); append(d,htmlObj); close(d); rptview(d);
В сгенерированном отчете текст имеет красный цвет.
Примечание
В процессе подготовки HTML, mlreportgen.utils.html2dom.prepHTMLFile
и mlreportgen.utils.html2dom.prepHTMLString
функции загружают HTML в веб-браузере MATLAB. Смотрите раздел Подготовка HTML перед преобразованием. Форматирование, не заданное в входе HTML или таблице стилей, определяется браузером. Входной HTML в этом примере не задает семейство шрифтов. Поэтому семейство шрифтов определяется браузером. Чтобы отобразить текст другим шрифтом, можно задать шрифт в вход таблице стилей или HTML перед подготовкой преобразования HTML или использовать возможности форматирования генерации отчета. См. раздел Подходы к форматированию отчетов.
mlreportgen.dom.HTML
| mlreportgen.dom.HTMLFile
| mlreportgen.utils.html2dom.prepHTMLFile
| mlreportgen.utils.html2dom.prepHTMLString
| mlreportgen.utils.tidy