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.