Main Content

レポート テンプレート

レポート エクスプローラーでは、テンプレートを使用してレポートを書式設定できます。テンプレートは、レポートの固定コンテンツ、形式、およびレイアウトを指定する HTML または Word ドキュメントです。Microsoft® Word テンプレートを使用すると Word レポートと PDF レポートを書式設定でき、HTML テンプレートを使用すると HTML レポートと PDF レポートを書式設定できます。MATLAB® Report Generator™ には、PDF レポートと Word レポート用の Word テンプレートと PDF レポートと HTML レポート用の HTML テンプレートの既定のセットが用意されています。これらの既定のテンプレートをコピーしたりカスタマイズしたりすることで独自のテンプレートを作成できます。

テンプレートベースの出力タイプ

レポート エクスプローラーには、一連のテンプレートベースのレポート出力タイプが用意されています。これらの出力タイプは、Report Generator のルート形式コンポーネントまたは Reporter コンポーネントの [ファイル形式] ドロップダウン リストに表示されます。テンプレートベースの出力タイプを選択すると、隣のドロップダウン リストにその出力タイプで使用可能なテンプレート (レポート エクスプローラーの組み込みテンプレート、MATLAB パスまたは MATLAB セッション開始時の現在のディレクトリにあるテンプレートなど) が取り込まれます。既定では、レポート エクスプローラーは既定のテンプレートを使用し、指定された出力タイプにレポートを書式設定します。別のテンプレートを選択するには、隣のリストから選択します。

テンプレートベースの出力タイプ

Name on Form コンポーネントName on Report コンポーネント生成物
ダイレクト PDFダイレクト PDF (テンプレートを使用)PDF 固有の拡張子をもつ HTML テンプレートに基づくレポート コンテンツと形式の書式設定オブジェクト (FO) 表現。FO 表現は PDF に変換されます。
PDF (Word 使用)PDF (Word テンプレートを使用)Microsoft Word テンプレートを使用した Microsoft Word レポート。Microsoft Word を使用して Word レポートを PDF に変換します。この出力タイプは、Windows でのみ使用できます。レポート サイズは Word のページ容量 (一般的に約 500 ページ) に制限されています。
HTMLHTML (テンプレートを使用) HTML テンプレート パッケージを使用した HTML レポート パッケージ。レポートとテンプレートは両方とも、HTML ドキュメント、スタイル シート、イメージ、および JavaScript を含む zip ファイルです。
マルチページ HTML (R2024a 以降)マルチページ HTML (テンプレートを使用)HTML テンプレート パッケージを使用した HTML レポート パッケージ。レポートとテンプレートは両方とも、HTML ドキュメント、スタイル シート、イメージ、および JavaScript を含む zip ファイルです。
単一ファイルの HTML単一ファイルの HTML (テンプレートを使用)HTML テンプレート パッケージを使用した HTML レポート。HTML レポートは、レポートのテキスト、スタイル シート、イメージ、および JavaScript が組み込まれた単一の HTML ファイルです。
WordWord (テンプレートを使用)Microsoft Word レポートを使用した Word レポート。

テンプレートと XSL スタイル シートおよび DSSSL スタイル シートの比較

テンプレート以外にも、レポート エクスプローラーは XSL スタイル シートや DSSSL スタイル シートの使用したレポートの書式設定をサポートしています。XSL スタイル シートは、XSL と呼ばれる XML の方言で作成されたプログラムであり、レポートの中間 XML コンテンツを HTML または PDF 出力に変換して書式設定します。DSSSL スタイル シートは、Lisp の方言で作成されたプログラムであり、レポートの中間 XML コンテンツを Microsoft Word 出力に変換します。レポート エクスプローラーはスタイルシートベースの書式設定をサポートしています。テンプレートが使用可能になる前のリリースでも、Report Generator のレポート エクスプローラーを使った 開発と下位互換性があります。新しい Report Generator でレポート エクスプローラーを使って開発する場合は、テンプレートのみを使用してください。その理由は、スタイル シートに比べ、テンプレートには以下に示す大きな利点があるためです。

  • 書式設定: XSL スタイル シートと DSSL スタイル シートの書式オプションは限られています。たとえば、レポート内のすべてのタイトルとすべての本文段落は同じ書式でなければなりません。一方、テンプレートでは、Microsoft Word と HTML ドキュメントで利用可能なすべての書式オプションを使用できます。

  • スケーラビリティ: レポート エクスプローラーでは、db2dom と呼ばれる MATLAB ベースのファイル コンバーターを使用し、テンプレートに基づいてレポートを変換します。レポート エクスプローラーは Java ベースのファイル コンバーターである xsltJADE を使用して XSL スタイル シートと DSSSL スタイル シートに基づいてレポートを変換します。db2dom コンバーターは一般的に xsltJADE よりはるかに高速で、Word 出力と HTML 出力には Java メモリを使用せず、PDF 出力に使用するメモリはかなり少量です。その結果、レポート エクスプローラーでは、スタイル シート ベースの出力よりも、テンプレートを使用した方が、より大きいレポートを生成できます。

コンポーネント スタイル

すべてのレポート テンプレートにスタイル シートが含まれます。このスタイル シート (XSL スタイル シートおよび DSSSL スタイル シートと混同しないでください) は、スタイルと呼ばれる、テキスト、段落、リスト、およびテーブルの書式の名前付きセットを定義するドキュメントです。レポート生成中、レポート エクスプローラーのファイル コンバーターである db2dom は、テンプレート スタイル シートを生成されたレポートにコピーして、Report Generator のコンポーネントで生成された段落、テキスト、リスト、およびテーブルにスタイル名を割り当てます。HTML ブラウザーや Microsoft Word などのレポートの表示や出力に使用するプログラムでは、スタイルを使用してレポートを書式設定します。

レポート エクスプローラーの既定のテンプレートは、レポート設定ファイルからレポート エクスプローラーが生成したレポートを書式設定するうえで必要なすべてのスタイルを定義します。このスタイルを他のスタイルと区別するには、たとえば rgParagraph のように、そのスタイルの名前を接頭辞 rg で始めます。既定のテンプレートのコピーでこれらのスタイルの定義をカスタマイズし (ただし、名前はカスタマイズしない)、カスタマイズしたコピーを使用してレポートを生成することで、レポートの外観を変更できます。

カスタマイズされたテンプレートで独自のスタイルを定義して、[StyleName] プロパティが含まれるダイアログのコンポーネントに、そのスタイルを割り当てることもできます。[StyleName] プロパティを含むコンポーネントには、テキスト コンポーネントと段落コンポーネントがあります。このように、コンポーネントの個別のインスタンスの外観をカスタマイズできます。たとえば、段落コンポーネントの既定のスタイルは rgParagraph です。たとえば、myParagraph) のような独自のスタイルを作成し、特定の段落コンポーネントに割り当てることで、そのコンポーネントの出力の外観を既定の rgParagraph スタイルをもつ段落の外観と差別化できます。

コンポーネント テンプレート

レポート エクスプローラーの既定のテンプレートには、コンポーネント テンプレート ライブラリが含まれます。コンポーネント テンプレート ライブラリは、タイトル ページ コンポーネントと章/節コンポーネントなど、レポート エクスプローラー コンポーネントのテンプレートを定義するドキュメントです。ライブラリのテンプレートにはそれぞれ、rgRectoTitlePage のような名前があります。この名前を利用して、Report Generator はライブラリのコンポーネント テンプレートを特定できます。コンポーネント ライブラリにより、必要なテンプレートすべてをメイン テンプレートと呼ばれる単一のテンプレートに含めて、メイン テンプレートから生成されるレポートを書式設定できます。

タイトル ページなどのレポート コンポーネントの書式の変更は、既定テンプレートをコピーしたテンプレートの編集や、レポート生成のためにカスタマイズ済みのテンプレートの使用によって可能になります。また、形式コンポーネントのメイン テンプレートにサブフォーム コンポーネント用のテンプレートを作成して保存することもできます。このように、カスタム コンテンツとカスタム書式を設定したカスタム レポート コンポーネントを作成できます。たとえば、カスタム タイトル ページ テンプレートを作成し、サブフォーム コンポーネントと併用すると、タイトル ページ コンポーネントで定義されていないサインオフ ブロックのようなコンテンツを含むタイトル ページを生成できます。

コンポーネント ホール

レポート エクスプローラーの既定のコンポーネント テンプレートには、ホールと呼ばれるプレースホルダーが含まれます。ホールは、そのテンプレートに固定のコンテンツと他の生成済みのコンテンツに対して、生成済みのコンテンツの挿入先を指定します。たとえば、タイトル ページ コンポーネントのテンプレートには、レポートのタイトル、サブタイトル、作成者、概要などのホールが含まれます。レポート エクスプローラーは、これらのホールをレポート生成中に生成されたコンテンツに置き換えます。たとえば、タイトル ページ テンプレートのタイトル ホールはタイトル ページ コンポーネントのタイトル プロパティで指定されたタイトルに置き換えられます。

コンテンツを指定するコンポーネントのホールを再配置したり削除することで、そのコンポーネントのレイアウトとコンテンツを変更できます。たとえば、タイトル ページ コンポーネントのテンプレート内でサブタイトル ホールを移動または削除すると、タイトル ページのサブタイトルの位置調整または削除ができます。また、形式コンポーネントとサブフォーム コンポーネント用に作成するテンプレートにホールを含め、Report Generator 設定ファイルのテンプレートのホール コンポーネントを使用してそのホールを埋めることができます。このようにして、たとえば、タイトル ページのレイアウト要件および書式要件と、正確に一致するタイトル ページを生成できます。

テンプレート キャッシュ

はじめてレポート エクスプローラーを MATLAB セッションで開くと、レポート エクスプローラーは MATLAB パスでテンプレートを検索します。見つかったすべてのテンプレートはキャッシュに保存されます。また、セッションで作成されたすべてのテンプレートはキャッシュに追加されます。その後、指定したテンプレートのうち、現在のディレクトリにないテンプレートをキャッシュ内で検索します。これによって、レポート エクスプローラーがテンプレートに基づいたレポートを生成する必要があるたびに MATLAB パスを検索する必要がなくなります。MATLAB セッションの最初に MATLAB パス上にないテンプレートを使用しようとすると、レポート エクスプローラーはテンプレートが見つからないことを示します。この場合、MATLAB 作業ディレクトリをテンプレート ディレクトリに変更するか、MATLAB パスにそのディレクトリを追加してキャッシュを更新します。キャッシュを更新するには、

>> rptgen.db2dom.TemplateCache.getTheCache(true);

を MATLAB コマンド ラインで実行します。

関連する例

詳細