iText - 如何搜索/替换现有的RTF文档
问题描述:
目前我正在研究一个简单的邮件合并模块。iText - 如何搜索/替换现有的RTF文档
我需要加载plain * .RTF模板,然后替换[[field]]标记中包含的所有单词并将其打印出来。
我发现iText库是免费的,并且能够加载/保存pdf和rtf。 我设法加载rtf,将几个副本合并到一个巨大的文档中,但我不知道如何用客户名称/地址等自定义数据替换[[field]]。
该功能是否存在,如果是 - 如何操作? 解决方案平台是c#/。NET
答
最后我决定用* .DOCX和 “微软的Office Open XML SDK 2.0”。NET强类型的包装。
答
您可以使用RichTextBox控件查找/替换占位符。
RichTextBox rtb = new RichTextBox();
rtb.LoadFile("template.rtf");
string placeHolder = "[[placeholder_name]]";
int pos = rtb.Find(placeHolder);
rtb.Select(pos, placeHolder.Length);
rtb.SelectedText = "new value";
在这之后你可以得到RTF格式的文本有:
rtb.Rtf;