このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
HTML から DOM オブジェクトへの変換の要件
HTML コンテンツを mlreportgen.dom.HTML
オブジェクトまたは mlreportgen.dom.HTMLFile
オブジェクトに変換するには、HTML コンテンツは XML 解析可能でなければなりません。XML 解析可能であるとは、次のように HTML コンテンツが整形式の XML 規則に準拠する場合のことをいいます。
すべての要素の終了タグを含む。
要素の開始/終了タグに小文字を使用する。たとえば、段落要素には
<P>
と</p>
ではなく<p>
と</P>
を使用します。要素を適切に入れ子にする。別の要素の内部で要素を開いている場合、外部の要素を閉じる前に、内部の要素を閉じます。
属性値を引用符で囲む。たとえば、
<p align="center"></p>
を使用します。
詳細については、www.w3schools.com/xml/xml_syntax.asp で、W3Schools による XML 規則の概要を参照してください。
ヒント
HTML コンテンツを XML 解析可能にするために、mlreportgen.utils.html2dom.prepHTMLString
、mlreportgen.utils.html2dom.prepHTMLFile
、および mlreportgen.utils.tidy
が使用できます。変換前の HTML の準備を参照してください。
サポートされる HTML 要素と属性
HTML から DOM オブジェクトへの変換でサポートされている HTML 要素および属性を次の表に示します。サポートされていない要素および属性は無視されます。
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 CSS スタイル属性
HTML スタイル属性を使用して、DOM レポートに追加する HTML コンテンツを書式設定できます。スタイル属性は、カスケード スタイル シート (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 マークアップ文字などの特殊文字を含む HTML コンテンツを追加できます。XML マークアップの特殊文字は、>
、<
、&
、"
および '
です。特殊文字を含めるには、HTML の名前または数字による文字参照を使用します。たとえば、追加する HTML コンテンツに左の山かっこ (<) を含めるには、以下の文字エンティティ参照のいずれかを使用します。
名前による文字エンティティ参照
<
数字による文字エンティティ参照
&003c;
詳細については、https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references を参照してください。
DOCTYPE 宣言
DOM レポートに追加する HTML コンテンツは、ドキュメント タイプ宣言 (https://en.wikipedia.org/wiki/Document_type_declaration参照) を含む必要はありません。コンテンツがドキュメント タイプ宣言を含む場合、以下の条件を満たさなければなりません。
コンテンツが文字エンティティ参照 (特殊文字) を含む場合、ドキュメント タイプ宣言は、参照されるエンティティを定義するドキュメント タイプ定義 (DTD) を参照しなければならない。たとえば、次の宣言はすべての HTML 文字エンティティを定義する DTD ファイルを指定します。
<!DOCTYPE html SYSTEM "html.dtd">
html.dtd
は、MATLAB® Report Generator™ ソフトウェアに含まれます。ドキュメント タイプ宣言が DTD ファイルを参照する場合、宣言によって指定されるパスに有効な DTD ファイルが存在しなければならない。そうでない場合、コンテンツを追加すると DTD 解析エラーが発生します。たとえば、次の宣言は解析エラーを引き起こします。
<!DOCTYPE html SYSTEM "foo.dtd">
追加されるコンテンツが文字エンティティ参照を含まない場合、ドキュメント タイプ宣言が DTD ファイルを参照する必要はない。たとえば、次の宣言は特殊文字を使用しないコンテンツに対して機能します。
<!DOCTYPE html>
ヒント
ドキュメント タイプ宣言の問題を避けるには、DOM レポートに追加する既存の HTML コンテンツから宣言を削除します。コンテンツが宣言を含まない場合、DOM は HTML 文字エンティティ セット全体を定義する有効な宣言を付加します。