Wie man PDF in PDFA in C++ konvertiert
Das Portable Document Format (PDF) ist das bevorzugte Format zum Teilen von Dokumenten auf verschiedenen Plattformen. Mit der zunehmenden Bedeutung der digitalen Archivierung besteht jedoch ein wachsender Bedarf, Dokumente in einem standardisierten Format zu archivieren, das langfristige Bewahrung und Zugänglichkeit sicherstellt. Das PDF/A (PDFA) Format ist speziell für diesen Zweck entwickelt und bietet ein stabiles und eigenständiges Format, das sich zum Archivieren eignet.
Verstehen von PDF/A
PDF/A, eine ISO-standardisierte PDF-Variante, ist darauf ausgelegt, Dokumente über die Zeit hinweg zu bewahren, während die Zugänglichkeit und Integrität des Inhalts erhalten bleiben. Im Gegensatz zu einer normalen PDF-Datei weist eine PDF/A-Datei spezifische Einschränkungen auf, die ihre Robustheit und Eigenständigkeit gewährleisten.
Dieser Artikel führt Sie durch den Prozess der Konvertierung von PDF-Dokumenten in das PDF/A-Format mithilfe der QPDF-Bibliothek in C++. QPDF, eine leistungsstarke C++-Bibliothek, ermöglicht es Entwicklern, PDF-Dokumente programmatisch zu verwalten und zu konvertieren, einschließlich der PDF-zu-PDF/A-Konvertierung, mit nur wenigen Codezeilen.
QPDF C++ Bibliothek
QPDF ist eine C++-Bibliothek und ein Befehlszeilen-Tool, das entwickelt wurde, um das Arbeiten mit, Transformieren und Parsen von PDF-Dateien zu unterstützen. Sie ermöglicht es Entwicklern, programmgesteuert auf den Inhalt von PDF-Dateien zuzugreifen und diesen zu manipulieren, mit breiter Unterstützung. QPDF ist ein Open-Source-Projekt, das eine Reihe von Funktionen bietet, darunter Verschlüsselung, Entschlüsselung, Linearisierung, Optimierung und PDF/A-Konformität.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes eingerichtet haben:
- Code::Blocks IDE: Laden Sie Code::Blocks von der offiziellen Website herunter und installieren Sie es (Code::Blocks Official Site).
- QPDF-Bibliothek: Laden Sie die neueste Version der QPDF-Bibliothek für Ihr Betriebssystem von der QPDF-Website herunter (QPDF Official Site).
Erstellung eines PDF-zu-PDF/A-Projekts
- Code::Blocks öffnen: Starten Sie die Code::Blocks IDE auf Ihrem Computer.
- Neues Projekt erstellen: Klicken Sie oben im Menü auf Datei, dann auf Neu, gefolgt von Projekt.
- Projektart wählen: Wählen Sie im Fenster Neu aus Vorlage die Option Konsolenanwendung und klicken Sie auf Los. Wählen Sie die Sprache C/C++ und klicken Sie auf Weiter.
- Projektinformationen eingeben: Geben Sie im Feld Projekttitel einen Projektnamen ein (z.B. "PDFtoPDFA"). Wählen Sie den Speicherort für Projektdateien und klicken Sie auf Weiter.
- Compiler auswählen: Wählen Sie einen Compiler aus, und falls nötig, wählen Sie manuell einen aus der Liste aus. Klicken Sie auf Fertigstellen.
QPDF in das Projekt einbinden
Um die QPDF-Headerdateien in Code::Blocks einzubinden, befolgen Sie diese Schritte:
- Klicken Sie im Menü auf Projekt.
- Wählen Sie im Kontextmenü Kompilieroptionen.
- Gehen Sie im Kompilieroptionen-Dialog zum Reiter Suchverzeichnisse.
- Im Reiter Compiler klicken Sie auf die Schaltfläche Hinzufügen und navigieren Sie zum Verzeichnis mit den QPDF-Headerdateien (normalerweise im include-Ordner).
- Gehen Sie dann im Reiter Link auf die Schaltfläche Hinzufügen und binden Sie die Verzeichnisse lib und bin ein.
- Klicken Sie auf OK, um den Kompilieroptionen-Dialog zu schließen.
Zusätzlich müssen Sie während der Verbindungsphase eine Verbindung zur QPDF-Bibliothek herstellen. Folgen Sie diesen Schritten:
- Gehen Sie im Kompilieroptionen-Dialog zum Reiter Linker-Einstellungen.
- Klicken Sie unter Verknüpfungsbibliotheken auf Hinzufügen, dann navigieren Sie zum Verzeichnis mit den QPDF-Bibliotheksdateien (normalerweise mit einer .a- oder .lib-Dateierweiterung unter Windows).
- Klicken Sie erneut auf Hinzufügen und geben Sie den Namen der QPDF-Bibliothek ein (z.B. libqpdf.a oder qpdf.lib).
- Klicken Sie auf OK, um den Kompilieroptionen-Dialog zu schließen.
Schritte zur Konvertierung von PDF in PDF/A-Datei
Notwendige Header-Dateien einfügen
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
// The above code includes necessary header files for standard input/output operations and QPDF functionalities.
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
// The above code includes necessary header files for standard input/output operations and QPDF functionalities.
Pfade für Eingabe- und Ausgabedateien festlegen
In der Funktion main (Startpunkt des C++-Programms) werden die Pfade für die Eingabe- und Ausgabedateien festgelegt:
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
// These lines declare and initialize strings to store the paths of the input PDF and the output PDF/A file.
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
// These lines declare and initialize strings to store the paths of the input PDF and the output PDF/A file.
QPDF-Objekt für PDF-Datei erstellen
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
// Create a QPDF object for the input PDF and process the file to prepare it for conversion.
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
// Create a QPDF object for the input PDF and process the file to prepare it for conversion.
Erstelle QPDFWriter Objekt zum Schreiben einer PDF/A-Datei
QPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
// This creates a QPDFWriter object to handle writing the converted PDF/A file.
QPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
// This creates a QPDFWriter object to handle writing the converted PDF/A file.
PDF/A-Konformität einstellen und PDF-Dokumente konvertieren
writer.setQDFMode(true);
writer.write();
// Set the QPDFWriter to operate in PDF/A compliant mode and write the output file.
writer.setQDFMode(true);
writer.write();
// Set the QPDFWriter to operate in PDF/A compliant mode and write the output file.
Ausgabe
Die Ausgabedatei ist nicht bearbeitbar und PDF/A-konform:

Convert PDF to PDF/A in C
IronPDF-Bibliothek ist eine .NET-PDF-Bibliothek, die umfassende Funktionalitäten für die Arbeit mit PDF-Dokumenten bietet. Es erlaubt Entwicklern, PDF-Dokumente mit C# oder VB.NET zu erstellen, zu ändern und zu konvertieren. Benutzer können IronPDF verwenden, um PDF-Dateien aus HTML, ASPX, Word-Dokumenten (.doc) oder Bildern dynamisch zu generieren und reichhaltige Elemente wie Diagramme, Tabellen und Bilddaten (wie JPG, PNG-Formate) zu integrieren. Es ermöglicht auch das Zusammenführen, Aufteilen und Bearbeiten von Seiten bestehender PDF-Dateien sowie Textextraktion und Inhaltsmanipulation von PDF-Daten.
IronPDF erleichtert die Konvertierung vom PDF zum PDF/A-3b-Format Standard mit nur wenigen Codezeilen. Der folgende Code hilft, diese Aufgabe zu erreichen:
using IronPdf;
// Create a PdfDocument object or open any PDF file
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
// The above C# code demonstrates the use of IronPDF to convert a PDF document to a PDF/A-3b compliant file.
using IronPdf;
// Create a PdfDocument object or open any PDF file
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
// The above C# code demonstrates the use of IronPDF to convert a PDF document to a PDF/A-3b compliant file.
Imports IronPdf
' Create a PdfDocument object or open any PDF file
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3)
' The above C# code demonstrates the use of IronPDF to convert a PDF document to a PDF/A-3b compliant file.
Fazit
Dieser Artikel führt Sie durch die C++-Konvertierung eines Standard-PDF-Dokuments in das PDF/A-Format mithilfe der QPDF-Bibliotheken. PDF/A-Konformität sorgt für Inhaltserhaltung und Zugänglichkeit und ist somit ideal für die Archivierung.
IronPDF unterstützt auch verschiedene Formatkonvertierungen wie HTML, Bilder und Word-Dokumente zu PDF-Dateien. Für weitere Informationen besuchen Sie bitte diese IronPDF-Dokumentationsseite.
IronPDF bietet eine kostenlose Testversion von IronPDF, um die Funktionalität für die kommerzielle Produktion zu testen. IronPDF direkt herunterladen.

