KNOWLEDGEBASE
Aspose.Words による差し込み印刷: ドキュメントの自動化を簡素化
Aspose.Words は、.NET、Java、Android、またはクラウドベースのアプリケーションで Word ドキュメントの作成と操作を自動化できる強力なドキュメント操作ライブラリです。 最も一般的なドキュメント自動化タスクの 1 つは差し込み印刷です。これを使用すると、顧客、クライアント、またはその他の関係者向けにパーソナライズされたドキュメントを迅速かつ効率的な方法で作成できます。 この記事では、Aspose.Words を使用して差し込み印刷を実行する方法を説明します。
差し込み印刷とは何ですか?
差し込み印刷は、テンプレート文書と、名前、住所、日付、金額などの可変情報を含むデータ ソースを組み合わせることによって、手紙、封筒、ラベル、レポートなどのパーソナライズされた文書を生成する技術です。 テンプレート文書には、変数情報を挿入する場所を示す、差し込みフィールドまたは差し込み印刷フィールドとも呼ばれるプレースホルダーが含まれています。 データ ソースには、データベース、スプレッドシート、CSV ファイル、XML ファイル、またはプログラムからアクセスできるその他の構造化データ形式を使用できます。
差し込み印刷に Aspose.Words を使用する理由
Aspose.Words は、データベース、DataTable、DataView オブジェクト、LINQ クエリ、XML ファイル、さらにはカスタム オブジェクトなど、さまざまなデータ ソースとの差し込み印刷を実行するためのシンプルで柔軟な API を提供します。 単純な差し込み印刷や、条件付き書式、ネストされたフィールド、繰り返しブロック、さらには動的なグラフや画像を使用した複雑な差し込み印刷を実行できます。 Aspose.Words は、DOCX、PDF、HTML、EPUB、XPS などのさまざまな出力形式もサポートしているため、ニーズに最適な形式を選択できます。 さらに、Aspose.Words は、Windows、Linux、macOS、およびその他のプラットフォームで実行できるクロスプラットフォーム ライブラリであるため、既存のアプリケーションと簡単に統合できます。
テンプレートを作成するにはどうすればよいですか?
Aspose.Words を使用すると、Microsoft Word を使用して手動で、または DocumentBuilder クラスを使用してプログラムで差し込み印刷テンプレートを柔軟に作成できます。 この記事では、マージ テンプレートを作成するためのプログラムによるアプローチについて説明します。
DocumentBuilder クラスを使用すると、必要な差し込みフィールドを含むテンプレートを簡単に作成できます。 これを行うには、InsertTextInput、InsertField、および InsertParagraph メソッドを使用して、それぞれテキスト、差し込みフィールド、および改行を追加します。 これにより、テンプレートを特定のニーズに合わせて調整し、自動ドキュメント生成の準備が整っていることを確認できます。
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertTextInput("TextInput", TextFormFieldType.Regular, "", "Hi ", 0);
builder.InsertField(@"MERGEFIELD Name \* MERGEFORMAT");
builder.InsertTextInput("TextInput", TextFormFieldType.Regular, "", ",", 0);
builder.InsertParagraph();
builder.InsertParagraph();
builder.InsertTextInput("TextInput", TextFormFieldType.Regular, "", "Thanks for purchasing our product: ", 0);
builder.InsertField(@"MERGEFIELD Product \* MERGEFORMAT");
builder.InsertParagraph();
builder.InsertParagraph();
builder.InsertTextInput("TextInput", TextFormFieldType.Regular, "", "Best regards ", 0);
doc.Save("template.docx");
Aspose.Words で差し込み印刷を実行するにはどうすればよいですか?
- テンプレート ドキュメントをロードします。Document クラスを使用して、ファイルまたはストリームから Word ドキュメントをロードできます。
Document doc = new Document("template.docx");
- データ ソースの設定: Document.MailMerge プロパティを使用してデータ ソースを設定できます。データ ソースには、DataTable、DataView、LINQ クエリ、XML ファイル、または IMailMergeDataSource インターフェイスを実装するその他のオブジェクトを設定できます。
DataTable data = new DataTable();
data.Columns.Add("Name");
data.Columns.Add("Product");
data.Rows.Add("John Doe", "Product1");
data.Rows.Add("Doe John", "Product2");
- データテーブルの行ごとに差し込み印刷を実行し、出力文書を作成します。
int counter = 1;
foreach (DataRow row in data.Rows)
{
Document dstDoc = (Document)doc.Clone(true);
dstDoc.MailMerge.Execute(row);
dstDoc.Save(string.Format("Output{0}.docx", counter++));
}
Aspose は、 ナレッジベース記事、 ドキュメント、[ブログ](https: //blog.aspose.com/)、 コード サンプル、 デモ、 無料サポート および高可用性の 有料サポート。 お客様と協力し、ニーズに応じて Aspose.Words の実装を支援してくれる専門家が必要な場合、最適なソリューションは 有料コンサルティング です。