Ejemplo n.º 1
0
        //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);
            }
        }
Ejemplo n.º 2
0
 /// <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);
     }
 }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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));
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        // 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();
        }
Ejemplo n.º 8
0
        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;
            }
        }
Ejemplo n.º 9
0
        public byte[] pdf(System.Text.StringBuilder head)
        {
            var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();

            byte[] pdfBytes = htmlToPdf.GeneratePdf(head.ToString());
            return(pdfBytes);
        }
Ejemplo n.º 10
0
        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);
        }
Ejemplo n.º 11
0
        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;
            }
        }
Ejemplo n.º 12
0
        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;
            }
        }
Ejemplo n.º 13
0
        public void GeneratePdfBytes()
        {
            var htmlContent = GetHtmlPdf();
            var htmlToPdf   = new NReco.PdfGenerator.HtmlToPdfConverter();
            var pdfBytes    = htmlToPdf.GeneratePdf(htmlContent);

            Save(pdfBytes);
        }
Ejemplo n.º 14
0
        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));
        }
Ejemplo n.º 15
0
        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);
        }
Ejemplo n.º 16
0
        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);
        }
Ejemplo n.º 17
0
        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");
        }
Ejemplo n.º 18
0
        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);
            }
        }
Ejemplo n.º 19
0
        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);
            }
        }
Ejemplo n.º 20
0
        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);
        }
Ejemplo n.º 22
0
        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);
        }
Ejemplo n.º 23
0
 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));
 }
Ejemplo n.º 24
0
        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));
        }
Ejemplo n.º 25
0
 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);
        }
Ejemplo n.º 29
0
        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();
        }
Ejemplo n.º 30
0
        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");
        }
Ejemplo n.º 31
0
        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);
        }
Ejemplo n.º 32
0
 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));
 }
Ejemplo n.º 33
0
 /// <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());
 }
Ejemplo n.º 34
0
        /// <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
                });
            }
        }      
Ejemplo n.º 35
0
        //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);
        }
Ejemplo n.º 36
-1
		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;
		}