Преобразование содержимого HTML в mlreportgen.dom.HTML
или mlreportgen.dom.HTMLFile
объект, HTML содержимого должен быть XML-синтаксическим. HTML содержимого является XML-синтаксическим, когда он соответствует правилам для правильно сформированного XML, таким как:
Включите закрывающий тег для всех элементов.
Используйте нижний регистр для тегов открытия и закрытия (начальный и конечный) элемента. Для примера используйте <p>
и </p>
для элемента абзаца, а не <P>
и </P>
.
Правильно вложите элементы. Если вы открываете элемент внутри другого элемента, закройте первый элемент, прежде чем закрыть содержащий элемент.
Заключайте значения атрибутов в кавычки. Для примера используйте <p align="center"></p>
.
Для получения дополнительной информации см. W3Schools сводные данные правил XML в www.w3schools.com/xml/xml_syntax.asp.
Совет
Чтобы сделать HTML содержимого XML-синтаксическим, можно использовать mlreportgen.utils.html2dom.prepHTMLString
, mlreportgen.utils.html2dom.prepHTMLFile
, и mlreportgen.utils.tidy
. Смотрите раздел Подготовка HTML перед преобразованием.
В этой таблице показаны элементы и атрибуты HTML, поддерживаемые при преобразовании HTML в объект DOM. Неподдерживаемые элементы и атрибуты игнорируются.
Элемент HTML | Признаки |
---|---|
a | class , style , href , name |
address | class , style |
b | class , style |
big | class , style |
blockquote | class , style |
body | class , style |
br | n/a |
center | class , style |
cite | class , style |
code | class , style |
dd | class , style |
del | class , style |
dfn | class , style |
div | class , style |
dl | class , style |
dt | class , style |
em | class , style |
font | class , style , color , face , size |
h1, h2, h3, h4, h5, h6 | class , style , align |
hr | class , style , align |
i | class , style |
ins | class , style |
img | class , style , src , height , width |
kbd | class , style |
li | class , style |
mark | class , style |
nobr | class , style |
ol | class , style |
p | class , style , align |
pre | class , style |
s | class , style |
samp | class , style |
small | class , style |
span | class , style |
strike | class , style |
strong | class , style |
sub | class , style |
sup | class , style |
table | class , style , align , bgcolor , border , cellspacing , cellpadding , frame , rules , width |
tbody | class , style , align , valign |
tfoot | class , style , align , valign |
thead | class , style , align , valign |
td | class , style , bgcolor , height , width , colspan , rowspan , align , valign , nowrap |
th | class , style , bgcolor , height , width , colspan , rowspan , align , valign , nowrap |
tr | class , style , align , bgcolor , valign |
tt | class , style |
u | class , style |
ul | class , style |
var | class , style |
Для получения информации об этих элементах смотрите https://developer.mozilla.org/en-US/docs/Web/HTML/Element.
Можно использовать атрибуты стиля HTML для форматирования HTML- содержимого, добавляемых к отчету DOM. Атрибутом стиля является строка каскадных таблиц стилей (CSS) форматов.
Поддерживаются следующие форматы CSS:
background-color
border
border-bottom
border-bottom-color
border-bottom-style
boder-bottom-width
border-color
border-left
border-left-color
border-left-style
boder-left-width
border-right
border-right-color
border-rigtht-style
border-right-width
border-style
border-top
border-top-color
border-top-style
border-top-width
border-width
color
counter-increment
counter-reset
display
font-family
font-size
font-style
font-weight
height
line-height
list-style-type
margin
margin-bottom
margin-left
margin-right
margin-top
padding
padding-bottom
padding-left
padding-right
padding-top
text-align
text-decoration
text-indent
vertical-align
white-space
width
Для получения информации об этих форматах https://developer.mozilla.org/en-US/docs/Web/CSS/Reference.
Можно добавить HTML содержимого которая включает специальные символы, такие как британский фунт, знак доллара США или зарезервированные символы разметки XML. Специальные символы разметки XML >
, <
, &
, "
, и '
. Для включения специальных символов используйте HTML или числовые символьные ссылки. Для примера, чтобы включить левый угол скобку (<) в HTML содержимого, которую вы хотите добавить, используйте одну из следующих ссылок на сущность символов:
Именованная символьная сущность ссылается на <
Числовой символ сущности ссылку &003c;
Для получения дополнительной информации см. раздел https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references.
HTML содержимого, которая добавляется к отчету DOM, не должна включать объявление типа документа (см. https://en.wikipedia.org/wiki/Document_type_declaration). Если содержимое содержит объявление типа документа, оно должно соответствовать следующим условиям:
Если содержимое содержит ссылки на сущности символов (специальные символы), то в объявлении типа документа должна содержаться ссылка на определение типа документа (DTD), которое определяет объекты-ссылки. Для примера следующее объявление задает файл DTD, который задает все HTML символа сущности:
<!DOCTYPE html SYSTEM "html.dtd">
The html.dtd
включен в MATLAB® Report Generator™ программном обеспечении.
Если объявление типа документа ссылается на файл DTD, допустимый файл DTD должен существовать по пути, заданному объявлением. В противном случае добавление содержимого приводит к ошибке анализа DTD. Для примера следующее объявление вызывает ошибку анализа:
<!DOCTYPE html SYSTEM "foo.dtd">
Если добавляемое содержимое не содержит ссылок на символьные сущности, объявление типа документа не должно ссылаться на файл DTD. Например, следующая декларация работает для содержимого, которое не использует специальные символы:
<!DOCTYPE html>
Совет
Чтобы избежать проблем с объявлением типа документа, удалите объявления из существующего HTML содержимого, которые планируется добавить к отчетам DOM. Если содержимое не содержит объявления, DOM готовит допустимое объявление, которое определяет весь набор HTML символа сущности.