C#에서 Word 편지 병합 템플릿을 만들고 텍스트와 이미지를 결합

13504 단어 WordC#Spire.Doc
Word 편지 병합 템플릿을 만들고 다른 데이터를 템플릿에 적용하면 동일한 형식이지만 내용이 다른 문서를 일괄 처리하고 문서 처리 효율성을 높일 수 있습니다. 이 문서에서는 Spire.Doc 구성 요소를 사용하여 Word 편지 병합 템플릿 문서를 만드는 방법과 텍스트와 이미지를 기존 템플릿 문서에 결합하는 방법에 대해 설명합니다.
사용해야하는 도구 : Spire.Doc for .NET

단계:
1.Spire.Doc for .NET을 다운로드하여 설치하고 프로젝트에서 Spire.Doc.dll 파일을 찾습니다.
2.Visual Studio에 코드 삽입 :
편지 병합 템플릿 문서 만들기
【C#】

Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Spire.Doc;
using Spire.Doc.Documents;

namespace Meilmerge_Template2
{
    class Program
    {
        static void Main(string[] args)
        {
            //ドキュメントインスタンスを作成する 
            Document document = new Document();
            //セクションを追加
            Section section = document.AddSection();
            //段落を追加
            Paragraph paragraph = section.AddParagraph();

            //テキストを追加
            paragraph.AppendText("\n名 前 : ");
            //マージフィールド "Name"を追加
            paragraph.AppendField("Name", FieldType.FieldMergeField);

            //テキストを追加
            paragraph.AppendText("\n国 籍 : ");
            //差し込みフィールド"Country"を追加
            paragraph.AppendField("Country", FieldType.FieldMergeField);

            //テキストを追加
            paragraph.AppendText("\n故 郷 : ");
            //差し込みフィールド "Hometown"を追加
            paragraph.AppendField("Hometown", FieldType.FieldMergeField);

            //テキストを追加
            paragraph.AppendText("\n写 真 : ");
            //差し込みフィールド「写真」を追加
            paragraph.AppendField("Image:Photo", FieldType.FieldMergeField);

            //文書を保存して閉じる
            document.SaveToFile("テンプレート.docx", FileFormat.Docx2013);
        }
    }
}
'

디버깅하고 코드를 실행하면 생성된 문서는 다음과 같습니다.


텍스트와 이미지를 템플릿에 병합
【C#】

Program.cs
``
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Spire.Doc;
using Spire.Doc.Reporting;
using System.Drawing;

namespace Merge_Text_and_Image2
{
    class Program
    {
        static void Main(string[] args)
        {
            //テンプレート文書を読み込む 
            Document doc = new Document();
            doc.LoadFromFile("テンプレート.docx");

            var textFieldNames = new string[] { "Name", "Country", "Hometown" };
            var textFieldValues = new string[] { "豊 臣 は 仕 上 がっ た", "日 本", "大 阪 城" };

            var imageFieldNames = new string[] { "Photo" };
            var imageFieldValues = new string[] { "ピクチャ.jpg" };

            //テキストをテンプレートにマージする
            doc.MailMerge.Execute(textFieldNames, textFieldValues);

            //マージされた画像のカスタムイベントを作成する
           doc.MailMerge.MergeImageField += new MergeImageFieldEventHandler(MailMerge_MergeImageField);

           //イメージをテンプレートにマージする
           doc.MailMerge.Execute(imageFieldNames, imageFieldValues);

           //ドキュメントを保存
           doc.SaveToFile("結果.docx", FileFormat.Docx);         

        }
        //画像を読み込む
        static void MailMerge_MergeImageField(object sender, MergeImageFieldEventArgs field)
        {
            string filePath = field.FieldValue as string;
            if (!string.IsNullOrEmpty(filePath))
            {
                field.Image = Image.FromFile(filePath);
            }
        }
    }
}
'

디버깅하고 코드를 실행하면 생성된 문서는 다음과 같습니다.

좋은 웹페이지 즐겨찾기