2008-09-12 5 views

Antwort

52

LibHaru

Haru ist eine freie, plattformübergreifenden, Open-Source-Software-Bibliothek für PDF Erzeugungs in ANSI-C geschrieben. Es kann als eine statische Bibliothek (.a, .lib) und eine gemeinsam genutzte Bibliothek (.so, . DLL) arbeiten.

Versuchen es selbst nicht, aber vielleicht kann es Ihnen

+0

Können wir PDF-Dateien mit LibHaru lesen oder nur erstellen? –

+4

@Rui: nur erstellen, leider. –

+2

FWIW, ich habe einen POCO Wrapper für libHaru geschrieben (https://github.com/pocoproject/poco/tree/master/PDF). Wir haben es nie veröffentlicht, aber es ist Code in der Nähe von Produktionsqualität. – Alex

15

helfen Wenn Sie mutig und bereit sind, Ihre eigene Rolle, Sie mit einer Postscript-Bibliothek und ergänzt es mit PDF umgehen konnten beginnen, Nutzen von Adobe free online PDF reference.

3
  • LibHaru scheint von vielen verwendet zu werden.

Ein Nicht-Open-Source-Ansatz ist: PDF Creator Pilot die mehr Sprachoptionen einschließlich C++, C#, Delphi, ASP, ASP.NET, VB, VB.NET, VBScript, PHP und Python

5

Es hängt liefert ein bisschen auf Ihre Bedürfnisse. Einige Toolkits sind besser beim Zeichnen, andere sind besser zum Schreiben von Text. Cairo hat eine ziemlich gute Zeichnung (es unterstützt eine breite Palette von Bildschirm-und Dateitypen, einschließlich PDF), aber es ist möglicherweise nicht ideal für eine gute Typografie.

17

Ich arbeitete an einem Projekt, das einen PDF-Bericht benötigt. Nach der Online-Suche fand ich die PoDoFo-Bibliothek. Schien sehr robust. Ich brauchte nicht alle Features, also habe ich einen Wrapper erstellt, um etwas von der Komplexität zu abstrahieren. War nicht zu schwierig. Sie können die Bibliothek finden Sie hier:

http://podofo.sourceforge.net/

Viel Spaß!

+0

Der Aufbau von PdDoFo auf dem Mac ist ein großer Schmerz, also habe ich es schließlich aufgegeben. Building LibHaru war sehr einfach. –

+0

Podofo bekam 2 Compiler-Probleme, nachdem #include , in zwei Dateien hinzugefügt wurde, konnte das Paket erstellen. Aber irgendwie funktioniert das cmake-System nicht gut auf meinem Linux, wo ich zwei Versionen von GCC habe (das alte kam mit meinem Centos6.5, und das neueste 5.3, das ich gebaut habe). Die Verknüpfung ist ein Problem. Es gelang mir, die Helloworld zu verlinken, aber das Testprogramm erzeugte ein leeres Dokument. Es ist sehr schwer, dieses Problem zu lösen. –

+1

Aber podofo benötigt freetype2-Bibliothek, die ** GPL ist, nicht LGPL **. Sie können keine Software mit freetype2 ** erstellen, wenn Sie Ihre Quelle nicht veröffentlichen möchten. ** – 18C

6

PDF Hummus. siehe für http://pdfhummus.com/ - enthält alle erforderlichen Funktionen für die Manipulation mit PDF-Dateien mit Ausnahme von Rendering.

+0

Ich habe kürzlich einen großen PDF-Export mit Hummus gemacht und kann es empfehlen. Wahrscheinlich nicht vollständig in Bezug auf die Abdeckung aller Funktionen der aktuellen PDFSpec (die ziemlich erschöpfend ist), aber leicht verständlich und gut erweiterbar durch eine Callback-Klasse mit einer Reihe von virtuellen Funktionen (https://github.com/galkahana/PDF- Writer/Blob/Master/PDFWriter/DocumentContextExtenderAdapter.h). Enthält die TIFF/JPEG-Verarbeitung und die Freetype-Bibliothek für die Schriftartbearbeitung. –

6

jagpdf scheint einer von ihnen zu sein. Es ist in C++ geschrieben, bietet aber eine C-API.

1

Versuchen wkhtmltopdf

Software bietet

Plattformübergreifend. Open Source. Konvertieren Sie beliebige Webseiten in PDF-Dokumente mit Webkit. Sie können Kopf- und Fußzeilen hinzufügen. TOC-Generierung. Batch-Modus-Konvertierungen. Kann auf einem Linux-Server mit einem XServer ausgeführt werden (die X11-Client-Bibliotheken müssen installiert sein). Kann direkt von PHP oder Python über Bindungen zu libwkhtmltox verwendet werden.

+0

Das ist gut. Da es sich jedoch um ein veraltetes Webkit handelt, können sich einige Seiten beschweren (zB youtube) – swdev