将数据库中的HTML邮件合并到MS Word中

时间:2010-10-02 19:33:16

标签: html vb.net winforms ms-word mailmerge

项目:使用VB.NET构建winforms数据库接口和工作自动化应用程序。

我正在使用this editor让用户在数据库界面环境中输入他们的文本,这些文本将加载/保存/显示他们在表单中正在处理的内容,并将邮件合并到Word文档中等待对于内容。我可以做第一步并且效果很好,但是如何让MS Word将HTML识别为格式而不是仅仅将标签和文本合并为文本?

The tool有两个相关的属性:一个用于获取文本(没有标记,即没有HTML),另一个用于获取HTML的完整标记。这两种都是文本格式(我用它来在数据库中轻松存储)。

我能想到的想法/方向:

1)使用剪贴板。我可以直接从编辑器窗口复制/粘贴内容到Word,它很棒!但是,即使以编程方式使用剪贴板,从数据库加载也会有很大差异。 (也许我不明白如何使用剪贴板工具)

2)也许Word中有一个库或类/函数可以将HTML理解为“可合并”的内容?

谢谢!

: - 丹

2 个答案:

答案 0 :(得分:0)

您可以使用我们的(SautinSoft).Net库将每个HTML数据转换为Word文档。 接下来,您可以将所有生成的Word文档合并到单个Word文档中。该组件还具有合并Word文档的功能。

这是链接下载组件:http://www.sautinsoft.com/products/html-to-rtf/download.php

这是将HTML转换为内存中的Word文档的示例代码:

Dim h As New SautinSoft.HtmlToRtf
Dim rtfString As String = ""
rtfString = h.ConvertString(htmlString)

这是在内存中合并两个文档的示例代码:

Dim h As New SautinSoft.HtmlToRtf
Dim rtfSingle As String = ""
rtfSingle = h.MergeRtfString(rtf1, rtf2)

答案 1 :(得分:0)

我最终使用剪贴板设置文本。这是我需要回答这个问题的代码示例。

Clipboard.SetText(Me._Object.Property, TextDataFormat.Rtf)

我只是不知道如何告诉计算机内容是HTML或RTF等。结果很简单。

: - 丹