2009-01-28 5 views
1

Actuellement je travaille sur un simple module Mail-Merge.iText - comment faire une recherche/un remplacement sur un document RTF existant

Je dois charger un modèle * .RTF simple, puis remplacer tous les mots inclus dans les balises [[field]] et à la fin et les imprimer.

J'ai trouvé la bibliothèque iText qui est gratuite et capable de charger/sauvegarder les fichiers PDF et RTF. J'ai réussi à charger RTF, fusionner quelques copies à un doc énorme, mais je n'ai aucune idée de comment remplacer [[field]] par des données personnalisées comme le nom du client/adresse.

Est-ce que cette fonctionnalité est présente, et si oui, comment le faire? La plate-forme de la solution est C# /. NET

Répondre

0

Enfin j'ai décidé d'utiliser * .docx et "Open XML SDK 2.0 pour Microsoft Office" .NET fortement typés wrapper.

0

Je ne pense pas que le pdf soit comme vous voulez.

Selon est extrêmement difficile au mieux et pas possible au pire.

Est-ce que quelque chose comme RTFLib fonctionnerait mieux pour vous?

G-Man

0

Vous pouvez utiliser le contrôle RichTextBox pour rechercher/remplacer des espaces réservés.

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"; 

Après cela, vous pouvez obtenir un texte formaté rtf avec:

rtb.Rtf; 
Questions connexes