【问题标题】:Mail Merge using the Open XML SDK使用 Open XML SDK 进行邮件合并
【发布时间】:2023-03-25 00:52:01
【问题描述】:

我有一个包含 3 列(a、b、c)的 DataTable 和一个设置了相应 MailMerge 字段的 docx 文件。我想要做的是对包含数据的文档执行邮件合并。

假设您可以写入硬盘(如果您需要创建 csv 等来进行合并等),您没有有 word、excel 等,Open XML SDK is 已安装,但同样我们可以安装其他任何东西。

就答案而言,将输入数据转换为所需的数据并不是真正的问题,问题是如何在 Open XML SDK(或其他免费 API)中执行邮件合并)。

作为旁注,输出应该是一个包含 n 页的文件(其中 n 是数据中的行数),即不是 n 个文档(尽管我不介意文档的合并是否在结束)。

(我应该补充一点,我不受 MailMerge 概念的约束,例如,能够进行替换就可以了——尽管显然这需要在最后将文件合并在一起......)

【问题讨论】:

    标签: c# openxml mailmerge


    【解决方案1】:

    我的工作方式非常糟糕——基本上——目前,算法如下:

    1. 解压 docx 文件
    2. 读入 document.xml(到一个字符串)
    3. 字符串。替换字段
    4. 重新压缩到临时 docx
    5. 合并所有创建的临时文档

    合并文档的实际代码来自 Eric White 的博客:http://blogs.msdn.com/ericwhite/archive/2009/02/05/move-insert-delete-paragraphs-in-word-processing-documents-using-the-open-xml-sdk.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多