static void ProcessReport(ImagePlot[] imageData) { String fileName = "Output.pdf"; if(arguments.Output != null) { fileName = arguments.Output; } try { var s = File.Create(fileName); var r = new Report(); r.AddHeader(1, "Output generated: "+DateTime.Now); int numReports = arguments.Graphs; int height = 0; switch (numReports) { case 1: height = 800; break; case 2: height = 600; break; default: height = 400; break; } foreach(ImagePlot data in imageData) { r.AddPlot(data.plot, null, 800, height); } //if (arguments.Raw && false) //{ // //r.AddParagraph() // r.AddParagraph("this is a test"); //} using (var w = new PdfReportWriter(s)) { w.WriteReport(r, new ReportStyle {}); if (arguments.Verbose) Console.WriteLine("Output to: " + fileName); } } catch (Exception e) { Console.WriteLine("Could not output to file: " + e.Message); } }
public void SaveReport(string fileName) { string ext = Path.GetExtension(fileName); if (ext == null) { return; } ext = ext.ToLower(); var r = this.CreateReport(fileName); var reportStyle = new ReportStyle(); switch (ext) { case ".txt": using (var s = File.Create(fileName)) { using (var w = new TextReportWriter(s)) { r.Write(w); } } break; case ".html": using (var s = File.Create(fileName)) { using (var w = new HtmlReportWriter(s)) { w.WriteReport(r, reportStyle); } } break; case ".pdf": using (var w = new PdfReportWriter(fileName)) { w.WriteReport(r, reportStyle); } break; case ".rtf": using (var w = new RtfReportWriter(fileName)) { w.WriteReport(r, reportStyle); } break; case ".tex": using (var s = File.Create(fileName)) { using (var w = new LatexReportWriter(s, "Example report", "oxyplot")) { w.WriteReport(r, reportStyle); } } break; case ".xps": using (var w = new FlowDocumentReportWriter()) { w.WriteReport(r, reportStyle); w.Save(fileName); } break; case ".docx": using (var w = new WordDocumentReportWriter(fileName)) { w.WriteReport(r, reportStyle); w.Save(); } break; } }