iText: come eseguire ricerche / sostituzioni su documenti RTF esistenti
Domanda
Attualmente sto lavorando a un semplice modulo Mail-Merge.
Devo caricare un semplice modello * .RTF, quindi sostituire tutte le parole racchiuse tra i tag [[field]] e alla fine e stamparle.
Ho trovato la libreria iText che è gratuita e in grado di caricare / salvare PDF e RTF. Sono riuscito a caricare RTF, unire alcune copie in un unico documento enorme ma non ho idea di come sostituire [[campo]] con dati personalizzati come nome / indirizzo del cliente.
Questa funzione è presente e, se sì, come si fa? La piattaforma della soluzione è c # /. NET
Soluzione 2
Alla fine ho deciso di usare * .docx e " Open XML SDK 2.0 per Microsoft Office " Wrapper .NET fortemente tipizzato.
Altri suggerimenti
Non credo che il pdf sia il modo in cui vuoi andare.
Secondo questo articolo è estremamente difficile nella migliore delle ipotesi e non è possibile nel peggiore dei casi.
Qualcosa come RTFLib funzionerebbe meglio per te?
G-Man
È possibile utilizzare il controllo RichTextBox per trovare / sostituire i segnaposto.
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";
Dopodiché puoi ottenere testo formattato rtf con:
rtb.Rtf;