Saltar al contenido

wkhtmltopdf – convierte el código html a pdf directamente en C#

Este team de redactores ha estado mucho tiempo investigando para dar solución a tu interrogante, te ofrecemos la resolución por eso esperamos servirte de mucha ayuda.

Solución:

Acabo de comenzar un nuevo proyecto para proporcionar un contenedor C# P/Invoke alrededor de wkhtmltopdf.

Puede consultar mi código en: https://github.com/pruiz/WkHtmlToXSharp

Saludos.

Echa un vistazo a Pechkin

.NET Wrapper para WkHtmlToPdf DLL, biblioteca que utiliza el motor Webkit para convertir páginas HTML a PDF.

Paquetes Nuget:

Pechkin.Sincronizado

Pechkin

Código de ejemplo:

private void ConvertToPdf()

    var loadPath = Server.MapPath("~/HtmlTemplates");
    var loadFile = Path.Combine(loadPath, "Test.html");
    var savePath = Server.MapPath("~/Pdf");
    var saveFile = Path.Combine(savePath, DateTime.Now.ToString("HH-mm-ss.fff") + ".pdf");

    var globalConfig = new GlobalConfig()
        .SetMargins(0, 0, 0, 0)
        .SetPaperSize(PaperKind.A4);

    var pdfWriter = new SynchronizedPechkin(globalConfig);

    pdfWriter.Error += OnError;
    pdfWriter.Warning += OnWarning;

    var objectConfig = new ObjectConfig()
        .SetPrintBackground(true)
        .SetIntelligentShrinking(false);

    var pdfBuffer = pdfWriter.Convert(objectConfig, File.ReadAllText(loadFile));

    File.WriteAllBytes(saveFile, pdfBuffer);


private void OnWarning(SimplePechkin converter, string warningtext)

    throw new NotImplementedException();


private void OnError(SimplePechkin converter, string errortext)

    throw new NotImplementedException();

wkhtmltopdf es una herramienta gratuita, pero no está escrita en .NET y podría ser un poco difícil de integrar en su aplicación asp.net.

puede echar un vistazo a iTextSharp, que es gratuito, pero no puede manejar ningún tipo de html, o puede echar un vistazo a las herramientas comerciales para convertir html a pdf, como ExpertPDF o ABCpdf, que pueden manejar cualquier html/css.

valoraciones y reseñas

Te invitamos a confirmar nuestra tarea dejando un comentario o valorándolo te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *