1. データ

出力テンプレート

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

印刷テンプレートを使用して、エンティティのプロパティとリレーションに基づいて PDF を作成できます。これには、アセットに対して作成した注釈の PDF レポートが含まれます。

次の画像に示すように、印刷テンプレート エンティティの作成は PDF 生成プロセスの最初のステップです。

PDF 生成プロセスの 3 つのステップは次のとおりです。

  • 出力テンプレート: 出力テンプレートは、エンティティのプロパティとリレーションを使用して PDF ファイルの構造を指定するために使用されます。 印刷テンプレートは、[管理] メニューからアクセスできる [印刷テンプレートの管理] ページで作成します。

  • 出力エンティティ生成アクション: 出力エンティティ生成アクションは、出力テンプレートに基づいて PDF ファイルを生成するために使用されます。

  • PDF の生成操作: PDFの生成操作は、EntityOperations コンポーネントなどの一部のページ コンポーネントで設定できます。 操作を呼び出すと、印刷エンティティ生成アクションがトリガーされ、続いて PDF が生成されます。

[!注] PDF の生成が完了すると、[ダウンロード] ページからファイルをダウンロードできます。

印刷テンプレート エンティティを作成する

次の手順では、[印刷テンプレートの管理] ページを使用して [印刷テンプレート] エンティティを作成する方法を示します。

  • [管理] ページで、[印刷テンプレート] アイテムをクリックします。

  • [印刷テンプレート] ページで、[新しい印刷テンプレート] ボタンをクリックします。

  • [新しい印刷テンプレート] ダイアログ ボックスで、テンプレートの名前を入力し、ターゲット定義を選択します。

    [!注]

    [カスタム プロパティ] は、PDF の生成操作を呼び出すたびに指定する必要がある追加のプロパティです。

    [!注]

    出力テンプレートのターゲット定義は、PDF ファイルの生成元となるエンティティの定義です。 たとえば、PDF ファイルがアセット エンティティのリストを含むように構成されている場合、ターゲット定義はアセットになります。

  • [作成] をクリックします。 [印刷テンプレートをアップロード] ウィンドウが開き、ここでテンプレートの ZIP ファイルを選択します。

    出力テンプレート - 3

  • 完了したら、出力テンプレートが作成され、使用できるようになります。

[印刷テンプレート] パッケージ

印刷テンプレート エンティティは、PDF ファイルの構造を定義する「.cshtml」、「.json」、および「.css」ファイルを含む ZIP パッケージです。

以下は、「Module」という名前のエンティティで使用される印刷テンプレート ZIP パッケージの例で、「Feature」という名前の関連したエンティティのリストが含まれています。

  • Module.json: これはメイン ファイルで、使用される「Module」プロパティと、関連するエンティティ (この場合は「Feature」エンティティ) を指定します。
  • Module.cshtml: このファイルは、HTML 形式を使用して PDF ファイルで定義された「Module」プロパティの構造を指定します。 このファイルは、他の「.cshtml」ファイルを参照して、それらを構造内に埋め込むことができます。
  • Feature.cshtml: このファイルは、HTML 形式を使用して PDF ファイルで定義された「Feature」プロパティの構造を指定します。 このファイルは、他の「.cshtml」ファイルに埋め込むことができます。
  • CSS ファイル: このファイルは、「.cshtml」ファイルに関連する CSS を指定します。

Module.json

{
    "template": {
        "type": "Template",
        "file": "module.cshtml",
        "source": {
            "type": "entity",
            "variables": [
                {
                    "name": "TopTitleLabel",
                    "type": "snippet",
                    "value": {
                        "en-US": "Module Specifications"
                    }
                },
                {
                    "name": "Preview",
                    "type": "rendition",
                    "lowRes": {
                        "property": "Renditions",
                        "rendition": "preview"
                    },
                    "highRes": {
                        "property": "MainFile"
                    },
                    "relation": {
                        "name": "ModuleToMasterAsset",
                        "role": "Parent",
                        "relation": {
                            "name": "MasterFile",
                            "role": "Parent"
                        }
                    }
                },
                {
                    "name": "FeaturesLabel",
                    "type": "snippet",
                    "value": {
                        "en-US": "Features"
                    }
                },
                {
                    "name": "ModuleName",
                    "type": "property",
                    "property": "ModuleName"
                },
                {
                    "name": "ModuleDescription",
                    "type": "property",
                    "property": "ModuleDescription"
                },
                {
                    "name": "Features",
                    "type": "Template",
                    "template": {
                        "type": "Template",
                        "file": "features.cshtml",
                        "source": {
                            "type": "relation",
                            "relation": {
                                "name": "ModuleToFeature",
                                "role": "Parent"
                            },
                            "variables": [
                                {
                                    "name": "FeatureName",
                                    "type": "property",
                                    "property": "FeatureName"
                                },
                                {
                                    "name": "FeatureDescription",
                                    "type": "property",
                                    "property": "FeatureDescription"
                                },
                                {
                                    "name": "FeatureType",
                                    "type": "property",
                                    "property": "FeatureType"
                                }
                            ]
                        }
                    }
                }
            ]
        }
    }
}

Module.cshtml

@model Stylelabs.M.Print.EntityGeneration.Models.Model

<htmlblock><html><blocklinebreak/><head><blocklinebreak/>    <link rel="stylesheet" href="bootstrap.min.css" /><blocklinebreak/>    <link rel="stylesheet" href="styles.css" /><blocklinebreak/>    <title>Module specification</title><blocklinebreak/></head><blocklinebreak/><body><blocklinebreak/>    <div class="top-header"><blocklinebreak/>        <img src="/logo.png" class="logo" /><blocklinebreak/>         <h5 class="top-title">@Raw(@Model.Properties["$$TopTitleLabel$$"].FirstOrDefault())</h5><blocklinebreak/>    </div><blocklinebreak/>    <div class="container-wrapper"><blocklinebreak/>        <div class="container"><blocklinebreak/>            <div class="row"><blocklinebreak/>                <div class="col-xs-8"><blocklinebreak/>                   <blocklinebreak/>                    <h1>@Raw(@Model.Properties["$$ModuleName$$"].FirstOrDefault())</h1><blocklinebreak/>                    <div class="lead">@Raw(@Model.Properties["$$ModuleDescription$$"].FirstOrDefault())</div><blocklinebreak/>                </div><blocklinebreak/>                <div class="col-xs-4"><blocklinebreak/>                    <img src="@(@Model.Properties["$$Preview$$"].FirstOrDefault())" d><blocklinebreak/>                </div><blocklinebreak/>            </div><blocklinebreak/>        </div><blocklinebreak/>    </div><blocklinebreak/>    <div class="container"><blocklinebreak/>        <h5>@Raw(@Model.Properties["$$FeaturesLabel$$"].FirstOrDefault())</h5><blocklinebreak/>        <div class="features-wrapper"><blocklinebreak/>            @foreach (var feature in @Model.Properties["$$Features$$"])<blocklinebreak/>            {<blocklinebreak/>                @Raw(feature)<blocklinebreak/>            }<blocklinebreak/>        </div><blocklinebreak/><blocklinebreak/>    </div><blocklinebreak/></body><blocklinebreak/></html></htmlblock>

Feature.cshtml

この記事を改善するための提案がある場合は、 お知らせください!