Generieren Sie PDF über Open Source C++ API
Open-Source-C++-Bibliothek zum Erstellen, Bearbeiten, Manipulieren und Analysieren von PDF-Dateien.
Was ist PDF-Writer?
PDF-Writer ist eine Open-Source-C++-Bibliothek, die das Erstellen, Bearbeiten, Manipulieren und Analysieren von PDF-Dateien sowie Streams vollständig unterstützt. Die Bibliothek wurde mit der prinzipiellen „einmaligen“ Methode zum Generieren von PDF-Dateien entwickelt. Deshalb arbeitet es schnell und verbraucht wenig Speicher, unabhängig davon, wie groß die Datei wird. Daher ist es am besten, kleine PDF-Dateien zu erstellen oder größere PDF-Dokumente zu generieren.
Das Hinzufügen von Inhalten zu einem PDF ist immer sehr wichtig und hilft Entwicklern beim Generieren benutzerdefinierter PDFs. Die Bibliothek bietet Unterstützung für mehrere wichtige Funktionen zur Verarbeitung von PDF-Dateien, z. B. Erstellung von PDF-Seiten, PDF-Operatoren zum Zeichnen von Inhalten, Einbetten von JPG- oder PNG- und TIFF-Bildern, Ändern von PDF, Zusammenführen oder Aufteilen von PDFs, Rendern von PDF-Dateien, Datenextraktion aus PDF , Unterstützung für Unicode-Text, Unterstützung für TrueType- und OpenType-Schriftarten und vieles mehr.
Erste Schritte mit PDF-Writer
Die empfohlene Methode zum Erstellen der Bibliothek und der Beispielanwendung ist die Verwendung von CMake. Sie können es von der CMake-Website herunterladen. Die Bibliothek ist abhängig von Zlib, LibTiff, LibJpeg, FreeType und LibPng. Das bedeutet, dass Sie diese ebenfalls kompilieren sollten, bevor Sie die PDF-Bibliothek in einem verknüpften Kontext verwenden.
Sie können es auch manuell installieren; Laden Sie die neuesten Release-Dateien direkt aus dem GitHub-Repository herunter.
PDF-Generierung und -Änderung über C++
Softwareentwickler können die PDF-Writer-API verwenden, um eine neue PDF-Datei in ihren eigenen C++-Anwendungen zu generieren. Die Bibliothek erleichtert Entwicklern auch, sie nach ihren eigenen Bedürfnissen zu modifizieren. Sie können ganz einfach JPG-, PNG- und TIFF-Bilder einbetten, wiederverwendbare Objekte definieren, vorhandene PDF-Seiten sowie Text problemlos einbetten. Sie können vorhandene PDF-Seiten verwenden, indem Sie sie entweder als Seiten an das PDF anhängen oder sie als Teile verwenden, um sie in die Grafiken einer neu erstellten Seite einzufügen. Mit den folgenden Schritten können Sie ganz einfach PDF generieren.
PDF in C++ generieren
- Erstellen Sie eine Instanz des PDFWriter-Objekts
- Öffnen Sie eine PDF-Datei zum Schreiben
- Fahren Sie jetzt fort und fügen Sie Inhalte zum PDF hinzu.
- PDF-Dokument speichern
PDF-Generierung in C++
// Create an instance of the PDFWriter objec
PDFWriter pdfWriter;
// Open a PDF file for writing
pdfWriter.StartPDF("c:\\myFile.pdf",ePDFVersion13);
// ...add content to PDF file...
pdfWriter.EndPDF();
Hinzufügen neuer Seiten zu einem PDF-Dokument
Mit der PDF-Writer-Bibliothek ist es möglich, neue Seiten hinzuzufügen und ihre Abmessungen innerhalb eines PDF-Dokuments festzulegen. Es ist sehr einfach und erfordert nur wenige Zeilen C++-Code, um neue Seiten zu einer PDF-Datei hinzuzufügen. Die Bibliothek gibt Entwicklern auch die Möglichkeit, eine vorhandene Seite zu ändern oder eine Seite zu löschen. Es ist auch möglich, Inhalte zu einer bereits erstellten PDF-Seite hinzuzufügen.
Einbetten von Bildern in PDF-Dokumente
Die PDF-Writer-Bibliothek bietet Unterstützung für das Einbetten von TIFF-, PNG- und JPG-Bildern sowie PDF-Seiten. Es gibt High-Level-Methoden, die allgemein für jeden Bildtyp gelten. Abgesehen davon gibt es einige untergeordnete Methoden für fortgeschrittene Verwendungen der Bilder. Es bietet Unterstützung für JPG-Bilder durch den nativen DCT-Decoder, PNG durch Decodierung mit LibPng und TIFF-Bilder durch Codierung/Decodierung mit Hilfe von LibTiff.
Bilderinbettung in PDF über C++
pdfWriter.StartPDF("HighLevelImages.PDF",ePDFVersion13);
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PageContentContext* cxt = pdfWriter.StartPageContentContext(page);
cxt->DrawImage(10,10,"soundcloud_logo.jpg"));
pdfWriter.EndPageContentContext(cxt);
pdfWriter.WritePageAndRelease(page);
pdfWriter.EndPDF();
Verbinden verschiedener PDF-Dokumente
Mit der Open Source PDF Combiner API können Benutzer mit nur wenigen Codezeilen schnell mehrere PDF-Dokumente ohne externe Abhängigkeiten kombinieren. Der PDF-Writer gibt Softwareentwicklern die Möglichkeit, aus den bestehenden PDF-Dateien ein brandneues PDF-Dokument zu erstellen. Es hilft Benutzern, das PDF-Dokument einfacher zu speichern und zu überprüfen.
Zusammenführen von Inhalten von PDF-Seiten über C++
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PDFPageRange singlePageRange;
singlePageRange.mType = PDFPageRange::eRangeTypeSpecific;
singlePageRange.mSpecificRanges.push_back(ULongAndULong(0,0));
pdfWriter.MergePDFPagesToPage(page,"C:\\Other2PagePDF.PDF",singlePageRange);
pdfWriter.WritePageAndRelease(page);