public void MergeDocumentsFile() { RtfMerger merger = new RtfMerger("..\\..\\testdocs\\merge-template.rtf"); merger.AddPlaceHolder("$doc1$", "..\\..\\testdocs\\merge-doc1.rtf"); merger.AddPlaceHolder("$doc2$", "..\\..\\testdocs\\merge-doc2.rtf"); Assert.That(merger.Placeholders.Count, Is.EqualTo(2)); merger.AddPlaceHolder("$doc3$", "..\\..\\testdocs\\merge-doc2.rtf"); Assert.That(merger.Placeholders.Count, Is.EqualTo(3)); merger.RemovePlaceHolder("$doc3$"); Assert.That(merger.Placeholders.Count, Is.EqualTo(2)); RtfTree tree = merger.Merge(); tree.SaveRtf("..\\..\\testdocs\\merge-result-1.rtf"); StreamReader sr = null; sr = new StreamReader("..\\..\\testdocs\\merge-result-1.rtf"); string rtf1 = sr.ReadToEnd(); sr.Close(); sr = new StreamReader("..\\..\\testdocs\\rtf3.txt"); string rtf3 = sr.ReadToEnd(); sr.Close(); Assert.That(rtf1, Is.EqualTo(rtf3)); }
public static void LoadTree() { RtfTree tree = new RtfTree(); //Load and parse RTF document tree.LoadRtfFile(@"D:\rtfdoc.rtf"); tree.SaveRtf("path"); }
/// <summary> /// Cierra el documento RTF. /// </summary> public void Close() { InsertFontTable(); InsertColorTable(); InsertGenerator(); mainGroup.AppendChild(new RtfTreeNode(RtfNodeType.Keyword, "par", false, 0)); tree.RootNode.AppendChild(mainGroup); tree.SaveRtf(path); }
public void MergeDocumentsInMemory() { RtfMerger merger = new RtfMerger(); RtfTree tree = new RtfTree(); tree.LoadRtfFile("..\\..\\testdocs\\merge-template.rtf"); merger.Template = tree; RtfTree ph1 = new RtfTree(); ph1.LoadRtfFile("..\\..\\testdocs\\merge-doc1.rtf"); RtfTree ph2 = new RtfTree(); ph2.LoadRtfFile("..\\..\\testdocs\\merge-doc2.rtf"); merger.AddPlaceHolder("$doc1$", ph1); merger.AddPlaceHolder("$doc2$", ph2); Assert.That(merger.Placeholders.Count, Is.EqualTo(2)); RtfTree ph3 = new RtfTree(); ph3.LoadRtfFile("..\\..\\testdocs\\merge-doc2.rtf"); merger.AddPlaceHolder("$doc3$", ph3); Assert.That(merger.Placeholders.Count, Is.EqualTo(3)); merger.RemovePlaceHolder("$doc3$"); Assert.That(merger.Placeholders.Count, Is.EqualTo(2)); RtfTree resTree = merger.Merge(); resTree.SaveRtf("..\\..\\testdocs\\merge-result-2.rtf"); StreamReader sr = null; sr = new StreamReader("..\\..\\testdocs\\merge-result-2.rtf"); string rtf1 = sr.ReadToEnd(); sr.Close(); sr = new StreamReader("..\\..\\testdocs\\rtf3.txt"); string rtf3 = sr.ReadToEnd(); sr.Close(); Assert.That(rtf1, Is.EqualTo(rtf3)); }
private static void MergeDocuments() { RtfMerger merger = new RtfMerger("..\\..\\testdocs\\test-doc3.rtf"); merger.AddPlaceHolder("[TagTextRTF1]", "..\\..\\testdocs\\merge1.rtf"); merger.AddPlaceHolder("[TagTextRTF2]", "..\\..\\testdocs\\merge2.rtf"); Console.WriteLine("Processing..."); RtfTree tree = merger.Merge(); tree.SaveRtf("..\\..\\testdocs\\merge-result.rtf"); Console.WriteLine("File 'merge-result.txt' created."); Console.WriteLine(""); }
public static void FormRTFDocument(string filename, ReportTable table) { RtfTree tree = new RtfTree(); string rtfBase = @"{\rtf1\ansi\deff0 {\fonttbl {\f0 Times New Roman;}}\fs24"; tree.LoadRtfText(rtfBase); //Load an RTF document from a file RtfTreeNode grp = new RtfTreeNode(RtfNodeType.Group); foreach (ReportRow row in table.Rows) { grp.AddTableRow(row.Cells); } tree.RootNode.FirstChild.AppendChild(grp); tree.SaveRtf(filename); //Get and print RTF code //Console.Write(tree.ToStringEx()); }
/// <summary> /// Guarda el documento como fichero RTF en la ruta indicada. /// </summary> /// <param name="path">Ruta del fichero a crear.</param> public void Save(string path) { RtfTree tree = GetTree(); tree.SaveRtf(path); }