Quiero ser capaz de generar la salida en PDF de mi (nativo) C++ aplicación de Windows. ¿Hay alguna libre/de código fuente abierto las bibliotecas disponibles para hacer esto?

He mirado las respuestas a esta pregunta, pero que en su mayoría se relacionan .Net.

InformationsquelleAutor ChrisN | 2008-09-12

10 Comentarios

  1. 61

    LibHaru

    Haru es gratuito, multiplataforma
    de código abierto de software de la biblioteca para
    generación de PDF escrito en ANSI-C.
    puede funcionar como una estática de la biblioteca.una,
    .lib) y una biblioteca.así,
    .dll).

    No tratan de lo mismo, pero tal vez se pueda ayudarle a

    • Podemos leer archivos pdf con LibHaru o sólo podemos crear?
    • sólo crear, por desgracia.
    • FWIW, escribí un POCO de contenedor para libHaru ( github.com/pocoproject/poco/tree/master/PDF ). Nunca hemos liberado, pero está cerca de la producción-grado de código.
    • Por desgracia LibHaru no apoyar la lectura y edición de PDF. Tan inútil para mí.
  2. 18

    He trabajado en un proyecto que requiere un reporte en formato pdf. Después de buscar en internet encontré la PoDoFo de la biblioteca. Parecía muy robusto. Yo no necesita todas las características, así que he creado un contenedor de abstraer algo de la complejidad. No era demasiado difícil. Usted puede encontrar la biblioteca de aquí:

    http://podofo.sourceforge.net/

    Disfrutar!

    • Edificio PdDoFo en Mac es una enorme dolor, así que finalmente se dieron por vencidos. Edificio LibHaru fue muy fácil.
    • Podofo tienes 2 compilador emite, después de la adición de #include <climits>, <numeric_limits> en dos archivos, fue capaz de construir el paquete. Pero de alguna manera, el sistema cmake no juega bien en mi Linux, donde tengo dos versiones de GCC (viejo vino con mi Centos6.5, y una última 5.3 que voy a construir). La vinculación es un problema. Me las arreglé para vincular el helloworld, pero el programa de prueba producido un documento en blanco. Es muy duro para resolver este problema.
    • Pero podofo REQUIERE freetype2 biblioteca que es GPL, no LGPL. Usted no puede hacer el software con el uso de freetype2 si no desea hacer su origen público.
    • Freetype permite la inclusión en el comercial cerrado aplicaciones de origen. Consulte this
  3. 7

    Que depende un poco de tus necesidades. Algunas herramientas son mejores en el dibujo, los demás son mejores para la escritura de texto. El Cairo tiene una bastante buena para el dibujo (es compatible con una amplia gama de pantalla y tipos de archivo, incluyendo pdf), pero puede no ser lo ideal para una buena tipografía.

  4. 6

    PDF Hummus.
    véase, por http://pdfhummus.com/ – contiene todas las características necesarias para la manipulación de archivos PDF a excepción de la representación.

    • Hice un PDF de gran tamaño-Exportación con Hummus recientemente y lo puedo recomendar. Probablemente no esté completa, en términos de cubrir todas las características de la actual PDFSpec (que es bastante exhaustiva), pero fácil de entender y de buena extensible a través de una devolución de llamada clase con un número de funciones virtuales (github.com/galkahana/PDF-Writer/blob/master/PDFWriter/…). Contiene TIFF/JPEG manejo y la biblioteca freetype para el manejo de fuentes.
    • has sido capaz de compilar como una biblioteca de enlaces dinámicos? O ¿solo apoyo estático biblioteca de enlaces?
  5. 1

    Intentar wkhtmltopdf

    Características de Software

    De plataforma cruzada.
    De código abierto.
    Convertir cualquier página web en los documentos PDF con webkit.
    Usted puede agregar encabezados y pies de página.
    TOC generación.
    El modo por lotes las conversiones.
    Se puede ejecutar en un servidor Linux con un servidor x (X11 cliente libs debe estar instalado).
    Puede ser utilizado directamente por PHP o Python a través de enlaces a libwkhtmltox.

    • Esta es la buena. Pero, como el uso de la informática fecha de webkit, algunas páginas pueden queja (youtube por ejemplo)

Dejar respuesta

Please enter your comment!
Please enter your name here