//protected void btnprint_Click1(object sender, EventArgs e) //{ // try // { // string filname = h3Exmaname.InnerText.Replace(" ","").Trim() + ".pdf"; // PdfPrintOptions printopt = new PdfPrintOptions(); // printopt.CssMediaType = PdfPrintOptions.PdfCssMediaType.Screen; // string csspath = Server.MapPath("~/admin/css/AdminStyle.css"); // var uri = new System.Uri(csspath); // var converted = uri.AbsoluteUri; // printopt.CustomCssUrl = uri; // HtmlToPdf Renderer = new IronPdf.HtmlToPdf(printopt); // string html = divquestion.InnerHtml; // Renderer.PrintOptions.CssMediaType = PdfPrintOptions.PdfCssMediaType.Screen; // var PDF = Renderer.RenderHtmlAsPdf(html, uri); // string watermarktext = "<label style=font-family:ravel;>APURVA STAR PLUSE COMPUTER CLASSES</label> <br> FF - 6, Vishwash City-1,Shayonacity,Chanakyapuri, Ghatlodia, Ahmedabad, Gujarat 380061 <br>Email: apurvastarpulse @yahoo.com <br>Mobile : 9978532833 "; // PDF.WatermarkAllPages("<h2 style='color:blue'>" + watermarktext + "</h2>", IronPdf.PdfDocument.WaterMarkLocation.MiddleCenter, 50, -45); // #region header // SimpleHeaderFooter head = new SimpleHeaderFooter(); // head.CenterText = h3Exmaname.InnerText; // head.FontFamily = "Ravel"; // head.DrawDividerLine = true; // head.FontSize = 14; // #endregion // PDF.AddHeaders(head, false); // SimpleHeaderFooter Footer = new SimpleHeaderFooter() // { // LeftText = "{date} {time}", // RightText = "Page {page} of {total-pages}", // DrawDividerLine = true, // FontSize = 8 // }; // PDF.AddFooters(Footer, false); // //Renderer.PrintOptions.CssMediaType = PdfPrintOptions.PdfCssMediaType.Print; // //or // string uploadPath = Server.MapPath("~/QuestionPdf"); // if (!Directory.Exists(uploadPath)) // { // Directory.CreateDirectory(uploadPath); // } // PDF.SaveAs(Path.Combine(uploadPath, filname)); // Response.ContentType = "application/pdf"; // Response.AppendHeader("Content-Disposition", "attachment; filename="+ filname); // Response.TransmitFile(Path.Combine(uploadPath, filname.Trim())); // Response.End(); // } // catch (Exception ex) // { // com.Loginsert(HttpContext.Current.Request.Url.AbsolutePath, "btnprint_Click1", ex.StackTrace, ex.Message); // } //} protected void btnprint_Click1(object sender, EventArgs e) { try { string filname = h3Exmaname.InnerText.Replace(" ", "").Trim() + ".pdf"; PdfPrintOptions printopt = new PdfPrintOptions(); printopt.CssMediaType = PdfPrintOptions.PdfCssMediaType.Screen; string csspath = Server.MapPath("~/admin/css/AdminStyle.css"); var uri = new System.Uri(csspath); var converted = uri.AbsoluteUri; printopt.CustomCssUrl = uri; HtmlToPdf Renderer = new IronPdf.HtmlToPdf(printopt); string html = divquestion.InnerHtml; var htmlContent = String.Format(html, DateTime.Now); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); htmlToPdf.GeneratePdf(htmlContent, null, "export.pdf"); } catch (Exception ex) { com.Loginsert(HttpContext.Current.Request.Url.AbsolutePath, "btnprint_Click1", ex.StackTrace, ex.Message); } }
/// <summary> /// Create Pdf method /// </summary> /// <param name="distributorCartData"></param> public static byte[] CreateProductPDF(DataTable distributorCartData, int inventoryType) { try { var html = SettingsKeyInfoProvider.GetValue($@"{SiteContext.CurrentSiteName}.KDA_DistributorCartPDFHTML"); var groupCart = distributorCartData.AsEnumerable().GroupBy(x => x["ShoppingCartID"]).ToList(); var PDFBody = ""; groupCart.ForEach(cart => { PDFBody += CreateCarOuterContent(cart.FirstOrDefault(), SiteContext.CurrentSiteName); var cartData = cart.ToList(); PDFBody = PDFBody.Replace("{INNERCONTENT}", CreateCartInnerContent(cartData, SiteContext.CurrentSiteName, inventoryType)); }); html = html.Replace("{OUTERCONTENT}", PDFBody); NReco.PdfGenerator.HtmlToPdfConverter PDFConverter = new NReco.PdfGenerator.HtmlToPdfConverter(); PDFConverter.License.SetLicenseKey(SettingsKeyInfoProvider.GetValue("KDA_NRecoOwner", SiteContext.CurrentSiteID), SettingsKeyInfoProvider.GetValue("KDA_NRecoKey", SiteContext.CurrentSiteID)); PDFConverter.LowQuality = SettingsKeyInfoProvider.GetBoolValue("KDA_NRecoLowQuality", SiteContext.CurrentSiteID); return(PDFConverter.GeneratePdf(html)); } catch (Exception ex) { EventLogProvider.LogInformation("CartPDFHelper", "CreateProductPDF", ex.Message); return(null); } }
public HttpResponseMessage getPDF(string RegistroClinicoId) { var response = new HttpResponseMessage(HttpStatusCode.OK); try { var service = new PDFService(); var registro = service.PDFRegistroHistoria(RegistroClinicoId); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(registro); var stream = new MemoryStream(pdfBytes); response.Content = new StreamContent(stream); response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/pdf"); response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = "RegistroClinico.pdf" }; } catch (Exception ex) { // response.State = false; // response.Message = ex.Message; } return(response); }
public IHttpActionResult PostPDFReport(PdfReportRequest pdfReportRequest) { var returnUrl = string.Empty; try { // Generate the filename Uri baseUri = new Uri(Request.RequestUri.AbsoluteUri.Replace(Request.RequestUri.PathAndQuery, String.Empty)); string fileName = $"Survey_Report_{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.pdf"; var localFilePath = System.Web.HttpContext.Current.Server.MapPath("\\pdfreports\\" + fileName); //Phantom var htmlContent = pdfReportRequest.PrintHtml; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); //TODO: Remove this is to temporarily log htmlToPdf.LogReceived += (sender, a) => { var logLine = a.Data; _fileLogger.LogInfo(logLine); }; File.WriteAllBytes(localFilePath, pdfBytes); returnUrl = $"{baseUri}pdfreports/{fileName}"; } catch (Exception ex) { _fileLogger.LogError(ex); } return(Content(HttpStatusCode.OK, returnUrl)); }
public void SendMailToUser(string generatedPdfTemplateString, string IpMailID, string subject, string body, string pdfName) { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(generatedPdfTemplateString); MailMessage mailMessage = new MailMessage(FromMailID, IpMailID) { Subject = subject, Body = body, IsBodyHtml = true }; //mailMessage.CC.Add(_ccMailID); mailMessage.Attachments.Add(new Attachment(new MemoryStream(pdfBytes), pdfName)); SmtpClient smtp = new SmtpClient { Host = "smtp.gmail.com", EnableSsl = true }; NetworkCredential networkCredentialObj = new NetworkCredential { UserName = FromMailID, Password = MailPassword }; smtp.UseDefaultCredentials = true; smtp.Credentials = networkCredentialObj; smtp.Port = 587; smtp.Send(mailMessage); }
private static bool GeneraPDF(string readContents, string _file_pdf_destino) { Boolean _valida = false; try { //string readContents; //using (StreamReader streamReader = new StreamReader(@_file_html, Encoding.UTF8)) //{ // readContents = streamReader.ReadToEnd(); //} //readContents = readContents.Replace("XXXXXXXX", "AAAAAAA"); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdf.PageHeight = 180; htmlToPdf.PageWidth = 140; var margins = new NReco.PdfGenerator.PageMargins(); margins.Bottom = 2; margins.Top = 1; margins.Left = 3; margins.Right = 5; htmlToPdf.Margins = margins; htmlToPdf.Orientation = NReco.PdfGenerator.PageOrientation.Portrait; htmlToPdf.Zoom = 1F; htmlToPdf.Size = NReco.PdfGenerator.PageSize.A4; var pdfBytes = htmlToPdf.GeneratePdf(readContents); File.WriteAllBytes(@_file_pdf_destino, pdfBytes); _valida = true; } catch { _valida = false; } return(_valida); }
// render as PDF for download/print public void DailyDepositsPrint(DateTime fromDate, DateTime toDate) { ViewBag.fromDate = fromDate; ViewBag.toDate = toDate; var footerHtml = $@"<div style=""text-align:center"">page <span class=""page""></span> of <span class=""topage""></span></div>"; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter { PageFooterHtml = footerHtml, Margins = new NReco.PdfGenerator.PageMargins { Bottom = 15, Top = 15, Left = 10, Right = 10 }, Size = NReco.PdfGenerator.PageSize.Letter, Orientation = NReco.PdfGenerator.PageOrientation.Portrait }; var htmlContent = RenderViewToString(ControllerContext, "~/Views/DailyPayments/DailyDepositsPrint.cshtml", GetDepositModel(fromDate, toDate), true); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); Response.Buffer = true; Response.Clear(); Response.ContentType = string.Empty; Response.AddHeader("content-disposition", string.Format("attachment; filename={0} DailyDepositsPrint.pdf", fromDate.ToString("MM/dd/yy"))); Response.BinaryWrite(pdfBytes); Response.Flush(); }
public JsonResponse HtmlToPdf(string html, string conNum) { try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter() { Quiet = false, }; //htmlToPdf.WkHtmlToPdfExeName = "wkhtmltopdf.exe"; htmlToPdf.CustomWkHtmlArgs = " --load-media-error-handling ignore "; htmlToPdf.LogReceived += HtmlToPdf_LogReceived; var pdfBytes = htmlToPdf.GeneratePdf(html); string Path = Server.MapPath("~/Uploads/ConsignmentInvoices"); if (!System.IO.Directory.Exists(Path)) { System.IO.Directory.CreateDirectory(Path); } string filePath = System.IO.Path.Combine(Path, conNum + "_Invoice.pdf"); using (var fileStream = System.IO.File.Create(filePath)) { fileStream.Write(pdfBytes, 0, pdfBytes.Length); } return(new JsonResponse() { IsSucess = true, Result = filePath }); } catch (Exception ex) { throw ex; } }
public byte[] pdf(System.Text.StringBuilder head) { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); byte[] pdfBytes = htmlToPdf.GeneratePdf(head.ToString()); return(pdfBytes); }
private static bool GeneraPDF(string readContents, string _file_pdf_destino) { Boolean _valida = false; try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdf.PageHeight = 242; htmlToPdf.PageWidth = 170; var margins = new NReco.PdfGenerator.PageMargins(); margins.Bottom = 2; margins.Top = 1; margins.Left = 2; margins.Right = 5; htmlToPdf.Margins = margins; htmlToPdf.Orientation = NReco.PdfGenerator.PageOrientation.Portrait; htmlToPdf.Zoom = 1F; htmlToPdf.Size = NReco.PdfGenerator.PageSize.A4; var pdfBytes = htmlToPdf.GeneratePdf(readContents); //File.WriteAllBytes(@_file_pdf_destino, pdfBytes); _valida = true; } catch { _valida = false; } return(_valida); }
public JsonResponse HtmlToPdf(string html, string InvoiceNumber) { try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(html); string Path = Server.MapPath("~/Downloads/ClientInvoices"); if (!System.IO.Directory.Exists(Path)) { System.IO.Directory.CreateDirectory(Path); } string filePath = System.IO.Path.Combine(Path, InvoiceNumber + ".pdf"); using (var fileStream = System.IO.File.Create(filePath)) { fileStream.Write(pdfBytes, 0, pdfBytes.Length); } return(new JsonResponse() { IsSucess = true, Result = filePath }); } catch (Exception ex) { throw ex; } }
public void HtmlToPdf(string html, string filePath, bool isLandscape) { try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter() { Quiet = false, }; //htmlToPdf.WkHtmlToPdfExeName = "wkhtmltopdf.exe"; htmlToPdf.CustomWkHtmlArgs = " --load-media-error-handling ignore "; if (isLandscape) { htmlToPdf.CustomWkHtmlArgs += " -O landscape "; } htmlToPdf.LogReceived += HtmlToPdf_LogReceived; var pdfBytes = htmlToPdf.GeneratePdf(html); using (var fileStream = System.IO.File.Create(filePath)) { fileStream.Write(pdfBytes, 0, pdfBytes.Length); } } catch (Exception ex) { throw ex; } }
public void GeneratePdfBytes() { var htmlContent = GetHtmlPdf(); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); Save(pdfBytes); }
public static byte[] Generate(string html, string css) { var doc = $"{c_head} {html} <style>{css}</style>"; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); return(htmlToPdf.GeneratePdf(doc)); }
private string GetPdf(string html) { var htmlContent = html; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); var base64EncodedPdf = System.Convert.ToBase64String(pdfBytes); return(base64EncodedPdf); }
public async Task <byte[]> GetPdfReco(TemplateModel model) { var documentContent = await _templateService.RenderTemplateAsync("~/PdfTemplate/Pdf.cshtml", model); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(documentContent); return(pdfBytes); }
protected void Imprimir(object sender, EventArgs e) { var htmlContent = String.Format("<body>Tiquete de Cine: {0}</body>", DateTime.Now); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); htmlToPdf.GeneratePdfFromFile("Ticket.html/", null, "export.pdf"); }
public async Task sendInvoiceEmail(string invoiceHtml, string userEmail, string path, string pdfPathToSave) { try { //var order = GetOrderById(orderId); //order.PaymentMethodName = Utility.GetPaymentMethodName(order.PaymentMethod); //string invoiceHtml = MvcControllerCustom.RenderViewToString("Home", "~/Views/Home/GenerateInvoiceReport.cshtml", order, contextBase); //string path = @"~/Content/bootstrap.min.css"; //path = HttpContext.Current.Server.MapPath(path); if (File.Exists(path)) { string readText = File.ReadAllText(path); if (!string.IsNullOrWhiteSpace(readText)) { invoiceHtml = invoiceHtml.Replace(".testClass {}", readText); } } NReco.PdfGenerator.HtmlToPdfConverter pdfGenerator = new NReco.PdfGenerator.HtmlToPdfConverter(); byte[] pdfDocument = pdfGenerator.GeneratePdf(invoiceHtml); var url = SaveFile.SaveFileFromBytes(pdfDocument, "PDFReports", pdfPathToSave); string subject = "New Order Has been placed - " + EmailUtil.FromName; const string body = "Please find attached Invoice file"; var smtp = new SmtpClient { Host = "smtp.gmail.com", Port = 587, EnableSsl = true, DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new NetworkCredential(EmailUtil.FromMailAddress.Address, EmailUtil.FromPassword) }; var message = new MailMessage(EmailUtil.FromMailAddress, new MailAddress(userEmail)) { Subject = subject, Body = body + " Invoice Attached" }; var AdminEmail = BasketSettings.GetAdminEmailForOrders(); if (AdminEmail != null) { message.To.Add(new MailAddress(AdminEmail)); } Attachment attachment = new Attachment(url); message.Attachments.Add(attachment); smtp.Send(message); } catch (Exception ex) { Utility.LogError(ex); } }
private static void GenerateReportFile <TModel>(string templateContent, string outputFile, TModel model, ILogger logger, bool showReport) { const string GridStylesCss = "GridStyles"; var findString = $"<!-- import {GridStylesCss}.css -->"; if (templateContent.Contains(findString)) { var importContent = TemplateResources.GridStyles.Replace("@", "@@"); var replaceContent = $"<style>\r\n{importContent}\r\n</style>"; templateContent = templateContent.Replace(findString, replaceContent); } var config = new TemplateServiceConfiguration { DisableTempFileLocking = true, Language = Language.CSharp, CachingProvider = new DefaultCachingProvider(t => { }) }; var service = RazorEngineService.Create(config); var templateKey = System.IO.Path.GetFileNameWithoutExtension(outputFile); service.Compile(templateContent, templateKey); var htmlContent = service.Run(templateKey, null, model); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter { Grayscale = false, Margins = new NReco.PdfGenerator.PageMargins { Bottom = 4, Top = 4, Left = 5, Right = 5 } }; // To write to PDF outputFile = outputFile + ".pdf"; htmlToPdf.GeneratePdf(htmlContent, null, outputFile); // To write to HTML //outputFile = outputFile + ".htm"; //System.IO.File.WriteAllText(outputFile, htmlContent); logger.WriteInfo($"Generated report at: {outputFile}"); if (showReport) { Process.Start(outputFile); } }
public void StampaFinali(List <AtletaEliminatorie> campo1, List <AtletaEliminatorie> campo2) { ProgressBar p = new ProgressBar(); String temp; String HtmlReport = FormattedString.header; #region campo1 p.InizializeProgressBar(1, campo1.Count + campo2.Count + 2); p.Show(); int i = 1; temp = "<A NAME=\"table1\"><H1>Campo 1</H1></A>"; temp += FormattedString.match.Replace("##a##", campo1[0].Cognome + " " + campo1[0].Nome); temp = temp.Replace("##b##", campo1[1].Cognome + " " + campo1[1].Nome); temp = temp.Replace("##INCONTRO##", "Finale Primo e Secondo Posto"); p.IncrementProgressBar(i++); temp += FormattedString.footer; HtmlReport += temp; HtmlReport += "<div style=\"page-break-after:always\"></div>"; p.IncrementProgressBar(i + 1); #endregion #region campo2 temp = "<A NAME=\"table1\"><H1>Campo 2</H1></A>"; temp += FormattedString.match.Replace("##a##", campo2[0].Cognome + " " + campo2[0].Nome); temp = temp.Replace("##b##", campo2[1].Cognome + " " + campo2[1].Nome); temp = temp.Replace("##INCONTRO##", "Finale Terzo e Quarto Posto"); p.IncrementProgressBar(i++); temp += FormattedString.footer; HtmlReport += temp; HtmlReport += "</BODY></HTML>"; p.IncrementProgressBar(i + 1); p.Close(); p.Dispose(); #endregion var htmlContent = String.Format(HtmlReport, DateTime.Now); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); System.IO.File.WriteAllBytes(".\\PDF\\IncontriDirettiFinali.pdf", pdfBytes); Process.Start(".\\PDF\\IncontriDirettiFinali.pdf"); }
public ActionResult ExportToPdf(Report report) { var htmlToConvert = RenderViewToString("Report", GenerateDataReport(report)); var htmlToPdfConverter = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdfConverter.PdfToolPath = Server.MapPath("~/Uploads/Reports/"); var pdfBytes = htmlToPdfConverter.GeneratePdf(htmlToConvert); FileResult fileResult = new FileContentResult(pdfBytes, "application/pdf"); fileResult.FileDownloadName = "Report.pdf"; return(fileResult); }
public static string createPdf(string HTML, string attachFilenamePrefix) { var outputPath = AppDomain.CurrentDomain.BaseDirectory + "DataFiles\\"; System.IO.Directory.CreateDirectory(outputPath); var outputFile = outputPath + attachFilenamePrefix + "_" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".pdf"; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdf.GeneratePdf(HTML, null, outputFile); return(outputFile); }
public static string GeneratPdf(string headerHtml, string bodyHtml, string footerHtml) { NReco.PdfGenerator.HtmlToPdfConverter pdf = new NReco.PdfGenerator.HtmlToPdfConverter(); pdf.Margins = new NReco.PdfGenerator.PageMargins(); //pdf.Margins.Top = 25; //pdf.Margins.Bottom = 20; //pdf.Margins.Right = 5; //pdf.Margins.Left = 5; pdf.PageHeaderHtml = headerHtml != "" ? headerHtml : "<div>" + DateTime.Now.ToString("dd/MM/yyyy") + "</div>"; pdf.PageFooterHtml = footerHtml != "" ? footerHtml : "<div></div>"; pdf.CustomWkHtmlArgs = " --load-media-error-handling ignore "; byte[] pdfBytes = pdf.GeneratePdf(bodyHtml); return(Convert.ToBase64String(pdfBytes)); }
public static byte[] ConvertHtml2PDF(string reportingdir, bool landscape, string html) { var conv = new NReco.PdfGenerator.HtmlToPdfConverter(reportingdir); conv.License.SetLicenseKey( "PDF_Generator_Src_Examples_Pack_206386474469", "Rr2jlZeAYSK7msKUA2KZl/G/NVFPdTdQJc6UgecxGVvqaOgCcdZiViWqTYI70YpZb5dxALybcNVdU7Aafs+VQF0ODvCkmK6GA86dSkj8NN1hce3QXTRLg5cStq5LmPecLOnwFX/vtyAE3KMLZJuLdpUd5Jsod53zogRer64fFLE=" ); if (landscape) { conv.Orientation = NReco.PdfGenerator.PageOrientation.Landscape; } return(conv.GeneratePdf(html)); }
private void btnExportar_Click(object sender, EventArgs e) { using (DBEntities db = new DBEntities()) { var items = db.RENTA.ToList(); var file = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + @"Reporte\ReporteRenta.cshtml"); var html = Engine.Razor.RunCompile(file, Guid.NewGuid().ToString(), null, items, null); var htmlToPDF = new NReco.PdfGenerator.HtmlToPdfConverter(); SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.FileName = "Rentas"; saveFileDialog.DefaultExt = "pdf"; saveFileDialog.ShowDialog(); htmlToPDF.GeneratePdf(html, null, saveFileDialog.FileName + ".pdf"); } }
private bool GenerateQuatation() { bool isOk = false; string PDFSavePath = ConfigurationManager.AppSettings.Get("PDF_QUAT"); bool exists = System.IO.Directory.Exists(PDFSavePath); if (!exists) { System.IO.Directory.CreateDirectory(PDFSavePath); } string ToDate = DateTime.Now.ToShortDateString(); //DateTime newDate = DateTime.ParseExact(ToDate, "ddMMyyyy", CultureInfo.InvariantCulture); try { string path = Path.Combine(Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory), @"DocumentTemplates\Quatation\Header.html"); string[] files = File.ReadAllLines(path); string FileName = string.Empty; try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); string timestamp = Guid.NewGuid().ToString("N"); timestamp = DateTimeOffset.Now.ToUnixTimeMilliseconds().ToString(); FileName = "Quatation-" + "" + "-" + "" + "-" + timestamp + ".pdf"; PDFSavePath = PDFSavePath + FileName; htmlToPdf.GeneratePdf(files[0], "", PDFSavePath); logger.Info("Level3 - PDF File Generate Completed" + FileName); } catch (Exception ex) { logger.Info("Level3 - PDF File Generate Error Y " + ex.StackTrace); } } catch (Exception ex) { } return(isOk); }
public void Createpdf(string htmlContent) { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); var appDataPath = Server.MapPath("~/App_Data"); var filename = string.Format(@"{0}.pdf", DateTime.Now.Ticks); var path = Path.Combine(appDataPath, filename); System.IO.File.WriteAllBytes(path, pdfBytes.ToArray()); Response.ContentType = "application/pdf"; Response.ContentEncoding = System.Text.Encoding.UTF8; Response.AddHeader("Content-Disposition", "Inline; filename=TEST.pdf"); Response.BinaryWrite(pdfBytes); Response.Flush(); Response.End(); }
private string GeneratePDF(string PDFString) { string PDFSavePath = ConfigurationManager.AppSettings.Get("PDF_QUAT"); bool exists = System.IO.Directory.Exists(PDFSavePath); if (!exists) { System.IO.Directory.CreateDirectory(PDFSavePath); } string ToDate = DateTime.Now.ToShortDateString(); //DateTime newDate = DateTime.ParseExact(ToDate, "ddMMyyyy", CultureInfo.InvariantCulture); try { string FileName = string.Empty; try { var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); string timestamp = Guid.NewGuid().ToString("N"); timestamp = DateTimeOffset.Now.ToUnixTimeMilliseconds().ToString(); FileName = "Quatation-" + timestamp + ".pdf"; PDFSavePath = PDFSavePath + FileName; logger.Info("Level3 - PDF File Generate PDFSavePath " + PDFSavePath); logger.Info("Level3 - PDF File Generate PDFString " + PDFString); htmlToPdf.GeneratePdf(PDFString, "", PDFSavePath); logger.Info("Level3 - PDF File Generate Completed" + FileName); return(FileName); } catch (Exception ex) { logger.Info("Level3 - PDF File Generate Error Y " + ex.StackTrace); } } catch (Exception ex) { } return(PDFSavePath); }
public void StampaGironi(List <List <Atleta> > gironi, String nomeTorneo, String disciplina) { String HtmlReport = "<html><head></head><body><h1>Atleti iscritti al torneo " + nomeTorneo + " - " + disciplina + "</h1>"; ProgressBar p = new ProgressBar(); p.InizializeProgressBar(1, gironi.Count + 2); p.Show(); Int32 i = 1; foreach (List <Atleta> l in gironi) { HtmlReport += "<h2>Girone " + i + "</h2>"; HtmlReport += "<table style=\"width: 100%;\" border=\"1\">"; HtmlReport += "<tr><th>Associazione</th><th>Cognome</th><th>Nome</th></tr>"; foreach (Atleta a in l) { HtmlReport += "<tr><td>" + a.Asd + "</td><td>" + a.Cognome + "<td>" + a.Nome + "</td></tr>"; } HtmlReport += "</table></br>"; if (i % 5 == 0) { HtmlReport += "<div style=\"page-break-after:always\"></div>"; } i++; p.IncrementProgressBar(i); } HtmlReport += "</body></html>"; var htmlContent = String.Format(HtmlReport, DateTime.Now); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); System.IO.File.WriteAllBytes(".\\PDF\\Gironi_" + nomeTorneo + "_" + disciplina + ".pdf", pdfBytes); Process.Start(".\\PDF\\Gironi_" + nomeTorneo + "_" + disciplina + ".pdf"); p.IncrementProgressBar(i + 1); p.Close(); p.Dispose(); }
public void FineTorneo(String primo, String secondo, String terzo, String quarto, String nomeTorneo, String nomeDisciplina) { String HtmlReport = "<h1>Podio per il torneo " + nomeTorneo + " - " + nomeDisciplina + "</h1>"; HtmlReport += "<h2>Primo classificato: " + primo + "</h2>"; HtmlReport += "<h2>Secondo classificato: " + secondo + "</h2>"; HtmlReport += "<h3>Terzo classificato: " + terzo + "</h3>"; HtmlReport += "<h4>Quarto classificato: " + quarto + "</h4>"; var htmlContent = String.Format(HtmlReport, DateTime.Now); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); System.IO.File.WriteAllBytes(".\\PDF\\Podio_" + nomeTorneo + "_" + nomeDisciplina + ".pdf", pdfBytes); Process.Start(".\\PDF\\Podio_" + nomeTorneo + "_" + nomeDisciplina + ".pdf"); }
private void GeneratePDF(object obj) { var htmlContent = obj.ToString(); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); var filename = "Question.pdf"; var tempFolder = System.IO.Path.GetTempPath(); filename = System.IO.Path.Combine(tempFolder, filename); System.IO.File.WriteAllBytes(filename, pdfBytes); System.Diagnostics.Process.Start(filename); }
public byte[] MontaBytesPDF(bool convertLinhaDigitavelToImage = false) { var converter = new NReco.PdfGenerator.HtmlToPdfConverter(); if (!string.IsNullOrEmpty(this.PdfToolPath)) { converter.PdfToolPath = this.PdfToolPath; } return converter.GeneratePdf(this.MontaHtmlEmbedded(convertLinhaDigitavelToImage, true)); }
/// <summary> /// Lista de Boletos, objetos do tipo /// BoletoBancario /// </summary> /// <param name="boletos">Lista de Boletos, objetos do tipo BoletoBancario</param> /// <param name="tituloNaView">Título Que aparecerá na Aba do Navegador</param> /// <param name="CustomSwitches">Custom WkHtmlToPdf global options</param> /// <param name="tituloPDF">Título No Início do PDF</param> /// <param name="PretoBranco">Preto e Branco = true</param> /// <param name="convertLinhaDigitavelToImage">bool Converter a Linha Digitavel Em Imagem</param> /// <returns>byte[], Vetor de bytes do PDF</returns> public byte[] MontaBytesListaBoletosPDF(List<BoletoBancario> boletos, string tituloNaView = "", string CustomSwitches = "", string tituloPDF = "", bool PretoBranco = false, bool convertLinhaDigitavelToImage = false) { StringBuilder htmlBoletos = new StringBuilder(); htmlBoletos.Append("<html><head><title>"); htmlBoletos.Append(tituloNaView); htmlBoletos.Append("</title><style type='text/css' media='screen,print'>"); htmlBoletos.Append(".break{ display: block; clear: both; page-break-after: always;}"); htmlBoletos.Append("</style></head><body>"); if (!string.IsNullOrEmpty(tituloPDF)) { htmlBoletos.Append("<br/><center><h1>"); htmlBoletos.Append(tituloPDF); htmlBoletos.Append("</h1></center><br/>"); } foreach (BoletoBancario boleto in boletos) { htmlBoletos.Append("<div class='break'>"); htmlBoletos.Append(boleto.MontaHtmlEmbedded(convertLinhaDigitavelToImage, true)); htmlBoletos.Append("</div>"); } htmlBoletos.Append("</body></html>"); var converter = new NReco.PdfGenerator.HtmlToPdfConverter() { CustomWkHtmlArgs = CustomSwitches, Grayscale = PretoBranco }; if (!string.IsNullOrEmpty(this.PdfToolPath)) { converter.PdfToolPath = this.PdfToolPath; } return converter.GeneratePdf(htmlBoletos.ToString()); }
/// <summary> /// Restituisce la conversione in PDF del file di CHANGELOG, leggedo direttamente il file /// di testo presente alla radice del servizio. /// </summary> /// <returns>Il file di CHANGELOG in formato PDF.</returns> public virtual async Task<HttpResponseMessage> GetChangelogPdf() { var changelogPath = string.Empty; var changelogText = string.Empty; try { changelogPath = PortableEnvironment.MapPath("~/CHANGELOG.md"); using (var changelogStream = File.OpenRead(changelogPath)) using (var streamReader = new StreamReader(changelogStream)) { changelogText = await streamReader.ReadToEndAsync(); } // Genero l'HTML partendo dal Markdown. var md = new MarkdownSharp.Markdown(); var changelogHtml = md.Transform(changelogText); // Genero il PDF partendo dall'HTML. var pdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var changelogPdf = pdf.GeneratePdf(changelogHtml); var response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new ByteArrayContent(changelogPdf); response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/pdf"); response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment"); response.Content.Headers.ContentDisposition.FileName = $"{CaravanCommonConfiguration.Instance.AppName}-CHANGELOG.pdf"; return response; } catch (Exception ex) { var errorMsg = $"CHANGELOG file at path '{changelogPath}' could not be read or processed"; throw new HttpException(HttpStatusCode.NotFound, errorMsg, ex, new HttpExceptionInfo { UserMessage = "CHANGELOG file is currently not available. Please retry later.", ErrorCode = CaravanErrorCodes.CVE99998 }); } }
//Burdan pdf kaydettirilip mail gönderilecek public ActionResult SavePdf(string mailTemplate,int id) { try { //string mailTemplate = (new MailTemplateUtil()).GetMailTemplate("teklif"); //mailTemplate = (new MailTemplateUtil()).CustomFormat(mailTemplate, new string[] { }); //var htmlContent = String.Format("<body>Hello world: {0}</body>",DateTime.Now); mailTemplate = System.Uri.UnescapeDataString(mailTemplate); var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes1 = htmlToPdf.GeneratePdf(mailTemplate); string targetFolder = Server.MapPath("/Content/pdf"); string targetPath = Path.Combine(targetFolder, id.ToString() + ".pdf"); //file.SaveAs(targetPath); System.IO.File.WriteAllBytes(targetPath, pdfBytes1); } catch (Exception) { return Json(false, JsonRequestBehavior.AllowGet); } return Json(true, JsonRequestBehavior.AllowGet); }
private string GetPdf(string html) { var htmlContent = html; var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); var pdfBytes = htmlToPdf.GeneratePdf(htmlContent); var base64EncodedPdf = System.Convert.ToBase64String(pdfBytes); return base64EncodedPdf; }