このブログ投稿では、Python でテンプレートから Word ドキュメントを生成する方法を学習します。 XML、JSON、または CSV データ ソースを使用してテンプレートのプレースホルダーまたはタグを設定し、Word ドキュメントを作成するための最適なソリューションを見つけます。レポート生成プロセスは、多くの場合、目的のフィールドのプレースホルダーを含む事前定義されたドキュメントテンプレートにデータを入力することで構成されます。レポートエンジンは、テンプレートドキュメントを入力として受け取り、プレースホルダーにデータを動的に入力して、結果のレポートを生成します。この記事では、Javaを使用して動的かつプログラムでWordテンプレートにデータを入力することにより、Word文書を生成できる同様のユースケースも紹介します。
DOCXテンプレートからWord文書を生成するには、Aspose.Words for JavaAPIが提供するLINQReportingEngineを使用します。 LINQ Reporting Engineは、Wordテンプレートのテキスト、画像、リスト、テーブル、ハイパーリンク、ブックマークのさまざまなタグをサポートしています。これらのタグを含むテンプレートドキュメントには、Javaオブジェクト、およびXML、JSON、またはCSVデータソースからのデータがエンジンによって入力されます。それでは、Javaを使用してテンプレートからWord文書の生成を始めましょう。
この記事では、以下を使用してテンプレートからWord文書を生成する方法について説明します。
Javaオブジェクトからの値、 XMLデータソース、 JSONデータソース、 およびCSVデータソース。 Aspose.Words for Javaのインストール-WordAutomationand Report Generation API Aspose.Words for Java JARをダウンロードするか、以下の構成を使用してMavenベースのアプリケーションに追加できます。
リポジトリ:
AsposeJavaAPI Aspose Java API https://repository.aspose.com/repo/ 依存:
com.aspose aspose-words 20.1 pom Javaオブジェクトを使用してテンプレートからWord文書を生成する レポートの生成を開始するには、まず、テンプレートにJavaオブジェクトの値を入力してWord文書を作成します。ドキュメントテンプレートを定義するには、新しいWordドキュメントを作成し、次のタグを挿入してDOCXドキュメントとして保存します。
<<[s.getName()]>> says: "<<[s.getMessage()]>>." 上記のテンプレートでは、「s」はタグの設定に使用されるJavaクラスのオブジェクトとして扱われます。それでは、2つのデータメンバーを持つSenderという名前のクラスを作成しましょう。
public class Sender { public Sender(String name, String message) { _name = name; _message = message; } public String getName() { return _name; } public String getMessage() { return _message; } private String _name; private String _message; } 次に、WordテンプレートをLINQ Reporting Engineに渡し、Senderのオブジェクトの値に基づいてWordドキュメントを生成します。 Wordドキュメントを生成する手順は次のとおりです。