/// <summary> /// Converts HTML string into PDF file using EVOPDF utility. /// </summary> /// <param name="innerHtml"> /// The inner html. /// </param> private void CreatePdfEvoUtility(string innerHtml) { var thread = new Thread( new ThreadStart( delegate { // Get the location to save PDF file. var exportPdfFilename = Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "PDFTest"); if (!string.IsNullOrEmpty(exportPdfFilename)) { var pdf = new PdfConverter(); using (Stream file = File.Create(exportPdfFilename)) { pdf.SavePdfFromHtmlStringToStream(innerHtml, string.Format(ReportServerLocationUriFormat, this.rtviServerIp), file); } } // Stop busy indicator this.dispatcherService.BeginInvoke(DispatcherPriority.Background, () => this.UpdateStatusToView(string.Empty, false)); })); thread.SetApartmentState(ApartmentState.STA); thread.Start(); }
/// <summary> /// 将HTML文件转换为PDF文件流 /// </summary> /// <param name="templateFile">模板文件名称</param> /// <param name="values">需要填充的值</param> /// <param name="impactOnCurrentYearData">表格形式的值</param> /// <param name="futureImpactData">表格形式的值</param> /// <returns>PDF文件流</returns> public static Stream HtmlConvertToPDFStreamWithComments(HtmlTempalteType templateType, Dictionary <string, string> values, List <SubmissionApprovalRecord> records) { var html = GenerateHtmlFromTemplateWithComments(templateType, values, records); var pdfConverter = new PdfConverter(); Stream stream = null; pdfConverter.SavePdfFromHtmlStringToStream(html, stream); return(stream); }
/// <summary> /// Create a pdf and return the file path /// </summary> /// <param name="content">The html content</param> /// <returns></returns> public string CreateInFile(string filename) { this._Filename = Path.GetDirectoryName(filename) + "\\" + Path.GetFileName(filename); using (var s = File.Open(_Filename, FileMode.OpenOrCreate)) { _Converter.SavePdfFromHtmlStringToStream(Content, s); } return(this._Filename); }