Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# iText-如何搜索/替换现有RTF文档_C#_Itext_Mailmerge - Fatal编程技术网

C# iText-如何搜索/替换现有RTF文档

C# iText-如何搜索/替换现有RTF文档,c#,itext,mailmerge,C#,Itext,Mailmerge,目前我正在开发一个简单的邮件合并模块 我需要加载普通的*.RTF模板,然后替换[[field]]标记中包含的所有单词,最后打印出来 我发现iText库是免费的,可以加载/保存PDF和rtf。 我设法加载rtf,将几个副本合并到一个巨大的文档中,但我不知道如何用自定义数据(如客户名称/地址)替换[[field]] 该功能是否存在,如果存在,如何实现? 解决方案平台是c/.NET,我不认为pdf是您想要的方式 据他说,这在最好的情况下是极其困难的,在最坏的情况下是不可能的 你想要什么更好的吗 最后,

目前我正在开发一个简单的邮件合并模块

我需要加载普通的*.RTF模板,然后替换[[field]]标记中包含的所有单词,最后打印出来

我发现iText库是免费的,可以加载/保存PDF和rtf。 我设法加载rtf,将几个副本合并到一个巨大的文档中,但我不知道如何用自定义数据(如客户名称/地址)替换[[field]]

该功能是否存在,如果存在,如何实现?
解决方案平台是c/.NET,我不认为pdf是您想要的方式

据他说,这在最好的情况下是极其困难的,在最坏的情况下是不可能的

你想要什么更好的吗


最后,我决定使用*.docx和Open XML SDK 2.0 for Microsoft Office.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;