ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
現代のアプリケーションでは、請求書、送り状、手紙など、さまざまな目的でWord文書をその場で作成することが重要です。Microsoft Wordのテンプレート文書機能は、一貫性と効率性を確保するための強力な方法を提供します。 しかし、これらのテンプレートを手作業で入力するのは時間がかかり、ミスも発生しがちです。 そこでIronWordからIron Softwareこのライブラリは、Wordテンプレートへの入力プロセスをプログラムで自動化するように設計されています。 この記事では、以下のツールの使い方を説明します。IronWordWord文書のテンプレートに記入し、プロセスを説明するための実用的な例を提供すること。
Microsoft Visual Studioで新しいプロジェクトを作成します。
インストールIronWordNuGetパッケージマネージャを通して。
Wordテンプレート文書を作成します。
Word文書にデータを挿入し、新規ファイルとして保存する。
IronWordの.NETライブラリです。Iron SoftwareMicrosoft Word文書の作成、操作、管理をプログラムで容易にするように設計されています。 開発者がWord文書を生成するプロセスを自動化し、アプリケーション内でレポート、請求書、手紙、その他の種類の文書を動的に簡単に作成できるようにします。
IronWordWordテンプレートを使用することで、テンプレート文書内のプレースホルダーを定義し、実行時に実際のデータに置き換えることができます。
Word文書内のテキストを簡単に挿入、置換、削除できます。
このライブラリは、フォントスタイル、サイズ、色、段落揃えなど、さまざまな書式オプションをサポートしています。
IronWordは、文書内に表や画像を挿入し、操作することができます。
Microsoft Wordの異なるバージョンとシームレスに動作し、互換性と使いやすさを保証します。
手紙と通知:顧客や従業員のために、パーソナライズされた手紙や通知を作成します。
IronWordは.NETアプリケーションでのWord文書作業を簡素化し、文書生成や管理作業の自動化を望む開発者にとって価値あるツールとなります。
作業を開始する前に、以下のものをご用意ください:
では、新しいVisual Studioプロジェクトを作成することから始めましょう。
下の画面でコンソールアプリケーションのテンプレートを選択してください。
プロジェクト名と場所を提供してください。
.NETのバージョン、できればサポート付きの最新のものを選択し、作成をクリックします。
IronWord NuGetパッケージをNuGetパッケージ・マネージャーからVisual Studioにインストールしてください。
または、以下のコマンドを使用してCLIを直接インストールしてください。
dotnet add package IronWord --version 2024.9.1
dotnet add package IronWord --version 2024.9.1
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet add package IronWord --version 2024.9.1
次に、Word文書の作成プロセスで使用する1~2ページのWordテンプレート文書を作成します。
Dear {Name},
Thanks for Purchasing {product}, happy to serve you always. Your application dated {Date} has been approved. The product comes with an expiry date of {expiryDate}. Renew the product on or before expiry date.
Fell Free to contact {phone} or {email} for further queries.
Address: {Address}
Thank you,
{Sender}
Dear {Name},
Thanks for Purchasing {product}, happy to serve you always. Your application dated {Date} has been approved. The product comes with an expiry date of {expiryDate}. Renew the product on or before expiry date.
Fell Free to contact {phone} or {email} for further queries.
Address: {Address}
Thank you,
{Sender}
Dear
If True Then
Name
End If
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
', Thanks for Purchasing
'{
' product
'}
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
', happy @to serve you always.Your application dated
'{
' @Date
'}
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'has been approved.The product comes @with an expiry @date @of
'{
' expiryDate
'}
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'.Renew the product on @or before expiry @date.Fell Free @to contact
'{
' phone
'}
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'@or {email} for further queries.Address:
'{
' Address
'}
Thank you,
If True Then
'INSTANT VB TODO TASK: The following line uses invalid syntax:
' Sender}
上記の文書をTemplate.docxとして保存してください。
using IronWord;
class Program
{
static void Main()
{
License.LicenseKey = "your key";
// Define the path to the template and the output file object sender
string templatePath = "Template.docx";
string outputPath = "FilledDocument.docx";
// Create a new instance of the WordDocument class
WordDocument doc = new WordDocument(templatePath);
// Define a dictionary/ first table of placeholders and their replacements
var replacements = new Dictionary<string, string>
{
{ "{Name}", "John Doe" },
{ "{Date}", DateTime.Now.ToString("MMMM d, yyyy") },
{ "{Address}", "123 Iron Street, Iron Software" },
{ "{product}", "IronWord" },
{ "{Sender}", "IronSoftware" },
{ "{phone}", "+123 456789" },
{ "{email}", "sale@ironsoftware.com" },
{ "{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy") },
};
// Replace placeholders with actual data
foreach (var replacement in replacements)
{
doc.Texts.ForEach(x=>x.Replace(replacement.Key, replacement.Value));
}
// Save the filled document
doc.Save(outputPath);
Console.WriteLine("Document filled and saved successfully.");
}
}
using IronWord;
class Program
{
static void Main()
{
License.LicenseKey = "your key";
// Define the path to the template and the output file object sender
string templatePath = "Template.docx";
string outputPath = "FilledDocument.docx";
// Create a new instance of the WordDocument class
WordDocument doc = new WordDocument(templatePath);
// Define a dictionary/ first table of placeholders and their replacements
var replacements = new Dictionary<string, string>
{
{ "{Name}", "John Doe" },
{ "{Date}", DateTime.Now.ToString("MMMM d, yyyy") },
{ "{Address}", "123 Iron Street, Iron Software" },
{ "{product}", "IronWord" },
{ "{Sender}", "IronSoftware" },
{ "{phone}", "+123 456789" },
{ "{email}", "sale@ironsoftware.com" },
{ "{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy") },
};
// Replace placeholders with actual data
foreach (var replacement in replacements)
{
doc.Texts.ForEach(x=>x.Replace(replacement.Key, replacement.Value));
}
// Save the filled document
doc.Save(outputPath);
Console.WriteLine("Document filled and saved successfully.");
}
}
Imports IronWord
Friend Class Program
Shared Sub Main()
License.LicenseKey = "your key"
' Define the path to the template and the output file object sender
Dim templatePath As String = "Template.docx"
Dim outputPath As String = "FilledDocument.docx"
' Create a new instance of the WordDocument class
Dim doc As New WordDocument(templatePath)
' Define a dictionary/ first table of placeholders and their replacements
Dim replacements = New Dictionary(Of String, String) From {
{"{Name}", "John Doe"},
{"{Date}", DateTime.Now.ToString("MMMM d, yyyy")},
{"{Address}", "123 Iron Street, Iron Software"},
{"{product}", "IronWord"},
{"{Sender}", "IronSoftware"},
{"{phone}", "+123 456789"},
{"{email}", "sale@ironsoftware.com"},
{"{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy")}
}
' Replace placeholders with actual data
For Each replacement In replacements
doc.Texts.ForEach(Function(x) x.Replace(replacement.Key, replacement.Value))
Next replacement
' Save the filled document
doc.Save(outputPath)
Console.WriteLine("Document filled and saved successfully.")
End Sub
End Class
提供されるコードでは、IronWordライブラリを使用してWord文書のテンプレートに特定のデータを入力する例を示しています。 以下は簡潔な説明です:
ライセンス設定:コードはIronWordの機能を有効にするためのライセンスキーの設定から始まります。
ファイルパス:Wordテンプレートのパスを指定します。(\テンプレート.docx)出力ファイル(\FilledDocument.docx).3. **ドキュメント・インスタンスを作成します:テンプレート・パス参照を使って、∕WordDocument` のインスタンスが作成されます。
置換の定義:キーがテンプレート内のプレースホルダーを表し、値が挿入するデータを表す辞書が作成されます:辞書を繰り返し、ドキュメント内の各プレースホルダーを対応するデータで置き換えます。
Save Document:最後に、更新されたドキュメントは、saveメソッドを使用して指定された出力パスに保存され、パラメータを渡します7。 完了メッセージ:完了メッセージ**:ドキュメントの入力と保存が成功したことを確認するメッセージが出力されます。
出力
IronWordはまた、下の表に示すように、さまざまなテキスト効果を追加することができます。
次の例では、Word Iron Softwareにテキスト効果を追加します。
using IronWord;
using IronWord.Models;
class Program
{
static void Main()
{
License.LicenseKey = "your key";
// Define the path to the template and the output file
string templatePath = "Template.docx";
string outputPath = "FilledDocument.docx";
// Create a new instance of the WordDocument class
WordDocument doc = new WordDocument(templatePath);
// Define a dictionary of placeholders and their replacements
var replacements = new Dictionary<string, string>
{
{ "{Name}", "John Doe" },
{ "{Date}", DateTime.Now.ToString("MMMM d, yyyy") },
{ "{Address}", "123 Iron Street, Iron Software" },
{ "{product}", "IronWord" },
{ "{Sender}", "Sale," },
{ "{phone}", "+123 456789" },
{ "{email}", "sale@ironsoftware.com" },
{ "{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy") },
};
// Replace placeholders with actual data
foreach (var replacement in replacements)
{
doc.Texts.ForEach(x=>x.Replace(replacement.Key, replacement.Value));
}
// Save the filled document
//doc.Save(outputPath);
//Console.WriteLine("Document filled and saved successfully.");
// Create and configure text style methods
TextStyle textStyle = new TextStyle();
textStyle.TextEffect = new TextEffect()
{
GlowEffect = new Glow()
{
GlowColor = IronWord.Models.Color.Aqua,
GlowRadius = 10,
},
};
// Add text with style or image
doc.AddText(" IronSoftware").Style = textStyle;
// Export new Word document
doc.SaveAs("glowEffect.docx");
}
}
using IronWord;
using IronWord.Models;
class Program
{
static void Main()
{
License.LicenseKey = "your key";
// Define the path to the template and the output file
string templatePath = "Template.docx";
string outputPath = "FilledDocument.docx";
// Create a new instance of the WordDocument class
WordDocument doc = new WordDocument(templatePath);
// Define a dictionary of placeholders and their replacements
var replacements = new Dictionary<string, string>
{
{ "{Name}", "John Doe" },
{ "{Date}", DateTime.Now.ToString("MMMM d, yyyy") },
{ "{Address}", "123 Iron Street, Iron Software" },
{ "{product}", "IronWord" },
{ "{Sender}", "Sale," },
{ "{phone}", "+123 456789" },
{ "{email}", "sale@ironsoftware.com" },
{ "{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy") },
};
// Replace placeholders with actual data
foreach (var replacement in replacements)
{
doc.Texts.ForEach(x=>x.Replace(replacement.Key, replacement.Value));
}
// Save the filled document
//doc.Save(outputPath);
//Console.WriteLine("Document filled and saved successfully.");
// Create and configure text style methods
TextStyle textStyle = new TextStyle();
textStyle.TextEffect = new TextEffect()
{
GlowEffect = new Glow()
{
GlowColor = IronWord.Models.Color.Aqua,
GlowRadius = 10,
},
};
// Add text with style or image
doc.AddText(" IronSoftware").Style = textStyle;
// Export new Word document
doc.SaveAs("glowEffect.docx");
}
}
Imports IronWord
Imports IronWord.Models
Friend Class Program
Shared Sub Main()
License.LicenseKey = "your key"
' Define the path to the template and the output file
Dim templatePath As String = "Template.docx"
Dim outputPath As String = "FilledDocument.docx"
' Create a new instance of the WordDocument class
Dim doc As New WordDocument(templatePath)
' Define a dictionary of placeholders and their replacements
Dim replacements = New Dictionary(Of String, String) From {
{"{Name}", "John Doe"},
{"{Date}", DateTime.Now.ToString("MMMM d, yyyy")},
{"{Address}", "123 Iron Street, Iron Software"},
{"{product}", "IronWord"},
{"{Sender}", "Sale,"},
{"{phone}", "+123 456789"},
{"{email}", "sale@ironsoftware.com"},
{"{expiryDate}", DateTime.Now.AddYears(1).ToString("MMMM d, yyyy")}
}
' Replace placeholders with actual data
For Each replacement In replacements
doc.Texts.ForEach(Function(x) x.Replace(replacement.Key, replacement.Value))
Next replacement
' Save the filled document
'doc.Save(outputPath);
'Console.WriteLine("Document filled and saved successfully.");
' Create and configure text style methods
Dim textStyle As New TextStyle()
textStyle.TextEffect = New TextEffect() With {
.GlowEffect = New Glow() With {
.GlowColor = IronWord.Models.Color.Aqua,
.GlowRadius = 10
}
}
' Add text with style or image
doc.AddText(" IronSoftware").Style = textStyle
' Export new Word document
doc.SaveAs("glowEffect.docx")
End Sub
End Class
**説明
改訂されたコードでは、IronWordライブラリーを使用してWord文書のテンプレートに記入し、テキストをスタイルし、修正した文書を保存することを説明しています。 以下は簡潔な説明です:
ライセンス設定:IronWordのライセンスキーを設定し、機能を有効にします。
ファイルパス:テンプレートのパスを指定します。(Template.docx)出力ファイル(glowEffect.docx).
Create Document Instance:提供されたテンプレートパスを使用して WordDocument インスタンスを初期化します。
置換の定義:プレースホルダとそれに対応する置換値の辞書を作成します。
プレースホルダの置換:辞書を繰り返し、ドキュメント内のプレースホルダを実際のデータに置き換えます。
テキストスタイルの設定:グロー効果を持つテキストスタイルを定義し、色と半径を指定します。
スタイル付きテキストの追加:設定されたスタイルのテキストをドキュメントに追加します。
Save Document:更新されたドキュメントを新しい名前で保存します。(glowEffect.docx)また、適用されるテキストスタイルを反映する必要があります。
コンソール出力:以前のコンソール出力文はコメントアウトされ、保存操作は新しいドキュメント名を反映するように更新されました。
このコードはIronWordのドキュメントの自動化とカスタマイズ機能(テキストの置換やスタイリングなど)を示しています。
出力
IronWord. データが入力されると、提供された電子メールIDにライセンスが配信されます。 このライセンスは、.NET、Java、Python、またはNode.jsを使用する前に、コードの先頭に配置する必要があります。IronWordライブラリは以下の通りです。
License.LicenseKey = "your Key Here"
License.LicenseKey = "your Key Here"
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'License.LicenseKey = "your Key Here"
IronWordは、テンプレートを使用してWord文書を生成する際に、いくつかの利点を提供します。 開発者がプログラムでテンプレートに特定のデータを入力できるようにすることで、ドキュメント作成の自動化を簡素化し、手入力の必要性を減らします。 これにより、ヒューマンエラーのリスクが最小限に抑えられ、効率と精度が向上します。 さらに、IronWord生成される各ファイルが同じフォーマットと構造に準拠するように、ドキュメント間の一貫性を維持することができます。 繰り返し作業を自動化することで、時間とリソースを節約できるため、大量のドキュメントを迅速に作成するのに理想的です。 IronWord頻繁に、または複雑な文書生成を必要とするシナリオにおいて、生産性を向上させ、ワークフローを合理化します。
この記事で説明されているステップに従い、提供されている例を活用してIronWordまた、ドキュメント生成のニーズを効率的に管理し、ワークフローを合理化することができます。
9つの .NET API製品 オフィス文書用