Pregunta

Me gustaría generar dinámicamente contenido y luego renderizarlo en un archivo PDF. Este procesamiento se llevaría a cabo en un servidor de alojamiento remoto, por lo que no se utilizarán impresoras virtuales, etc. ¿Alguno tiene una recomendación para una biblioteca .NET (pref. C #) que funcione?

Sé que podría generar un montón de código PS y empaquetarlo yo mismo, pero preferiría algo un poco menos complicado en esta etapa.

¡Gracias!

¿Fue útil?

Solución

He tenido mucho éxito usando SharpPDF .

Otros consejos

Eche un vistazo a http://itextsharp.sourceforge.net/ . Es de código abierto.
Tutorial: http://itextdocs.lowagie.com/tutorial/

He tenido éxito usando Siberix

http://www.siberix.com/

Licencia corporativa: $ 350 USD (una licencia única cubre un número ilimitado de puestos de desarrollador de la compañía, un número ilimitado de servidores web de la compañía y un número ilimitado de distribuciones como parte de su aplicación).

Gratis PDF Generator .NET (WkHtmlToPdf wrapper) puede generar un bonito PDF desde una plantilla HTML con uno línea de código:

var pdfBytes = (new NReco.PdfGenerator.HtmlToPdfConverter()).GeneratePdf(htmlContent);

(todo lo que necesita es una DLL, sin dependencias externas)

Utilizamos el Amyuni PDF Converter y lo hemos utilizado con éxito durante varios años. Nuestro uso es a través de la interfaz COM, pero admite una interfaz .NET.

He tenido buenas experiencias con HTML a PDF de Winnovative .

Y los malos con Open Source HTML Doc (Problemas con elementos de formulario + CSS ).

He estado buscando una herramienta docx a pdf de alto rendimiento por un tiempo. Nuestro sistema tiene un aspecto de gobierno electrónico y está generando una gran cantidad de informes a la comunidad de usuarios. En este punto, el rendimiento es primordial.

Las herramientas anteriores que he usado no hicieron conversiones simultáneas, en cambio cada exe necesitaba esperar a que se completara el otro. He intentado Aspose.words y estoy muy contento con los resultados.

En primer lugar, fue muy fácil y sin problemas integrar e implementar en nuestro proyecto. Muy suave.

En segundo lugar, la velocidad de conversión es mucho mejor debido al hecho de que varios trabajos se ejecutan en paralelo.

En tercer lugar, no solo rápido, sino incluso sin errores de formato. Teniendo en cuenta que estamos proporcionando un sistema multilingüe y algunos informes incluyen campos en inglés y árabe (¡tenga en cuenta la alineación de derecha a izquierda!), Esto fue muy importante.

Y finalmente, el tamaño del archivo era bastante pequeño, lo que de nuevo es muy importante ya que se crean decenas de miles de documentos a través de nuestro sistema.

Nuestra primera implementación fue la biblioteca de interoperabilidad de Microsoft Office. Convertimos documentos docx a pdf usando el siguiente código. Esta biblioteca convierte los documentos docx a archivos pdf perfectamente y decidimos subir esto al servidor de generación de informes. Pero después de un tiempo, notamos que las operaciones de conversión están esperando cada ejecutable. Esto causa un gran retraso al convertir los documentos al mismo tiempo y es por eso que comenzamos a buscar una nueva herramienta para convertir archivos docx a archivos pdf. Ver imagen

El siguiente código muestra cómo convertir documentos docx a archivos pdf mediante la herramienta Aspose.Words para .NET. Ver imagen 2

RDLC & amp; los controles del Visor de informes pueden generar PDF a discreción del Cliente o mediante el comando del servidor, que luego se puede servir como un tipo mime PDF.

He usado PDF4NET de O2solutions con mucho éxito. Admiten todo tipo de escenarios y firma digital del pdf.

Si sus datos están mayormente en XML, también puede buscar una solución XSL-FO: estamos utilizando Alt-Soft's Xml2Pdf con gran éxito. El " servidor " la versión es un nombre poco apropiado: en realidad es solo una única DLL que debe incluir en su aplicación Winforms, WPF o ASP.NET, ¡eso es todo!

Funciona de maravilla (si está familiarizado con XSLT y XSL-FO, o está dispuesto a aprenderlo).

Marc

Utilizamos un conjunto de archivos DLL de terceros de PDFSharp que a su vez usa archivos DLL de MigraDoc. No conozco todas las razones por las que tomamos esa dirección (la decisión fue tomada por un desarrollador senior), pero puedo decirle que:

  • Parece estar en activo desarrollo.
  • Tenía la mayor parte del características que necesitábamos.
  • El código fuente está disponible. Aunque usó algo patrones y convenciones que yo no había visto antes, una vez que llegué a ellos, fue bastante fácil hacer que cambios Agregué soporte para usar System.Drawing.Image directamente en lugar de guardar archivos.
  • es tampoco está bien documentado interna o externamente.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top