Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

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.prepHTMLStringmlreportgen.utils.html2dom.prepHTMLFile、および mlreportgen.utils.tidy が使用できます。変換前の HTML の準備を参照してください。

サポートされる HTML 要素と属性

HTML から DOM オブジェクトへの変換でサポートされている HTML 要素および属性を次の表に示します。サポートされていない要素および属性は無視されます。

HTML 要素属性
aclass, style, href, name
addressclass, style
bclass, style
bigclass, style
blockquoteclass, style
bodyclass, style
brN/A
centerclass, style
citeclass, style
codeclass, style
ddclass, style
delclass, style
dfnclass, style
divclass, style
dlclass, style
dtclass, style
emclass, style
fontclass, style, color, face, size
h1, h2, h3, h4, h5, h6class, style, align
hrclass, style, align
iclass, style
insclass, style
imgclass, style, src, height, width
kbdclass, style
liclass, style
markclass, style
nobrclass, style
olclass, style
pclass, style, align
preclass, style
sclass, style
sampclass, style
smallclass, style
spanclass, style
strikeclass, style
strongclass, style
subclass, style
supclass, style
tableclass, style, align, bgcolor, border, cellspacing, cellpadding, frame, rules, width
tbodyclass, style, align, valign
tfootclass, style, align, valign
theadclass, style, align, valign
tdclass, style, bgcolor, height, width, colspan, rowspan,align, valign, nowrap
thclass, style, bgcolor, height, width, colspan, rowspan,align, valign, nowrap
trclass, style, align,bgcolor, valign
ttclass, style
uclass, style
ulclass, style
varclass, 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 コンテンツに左の山かっこ (<) を含めるには、以下の文字エンティティ参照のいずれかを使用します。

  • 名前による文字エンティティ参照 &lt;

  • 数字による文字エンティティ参照 &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 文字エンティティ セット全体を定義する有効な宣言を付加します。

関連するトピック