在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
可攜式文件格式(PDF)一直是跨越各種平台分享文件的首選格式。 然而,隨著數位檔案保存的重要性日漸增加,對於以標準化格式存檔文件以確保長期保存和可訪問性的需求也與日俱增。 PDF/A(PDFA)格式專為此目的設計,提供一種穩定且自包含的格式,適合存檔。
PDF/A 是一個經 ISO 標準化的 PDF 變體,旨在隨著時間的推移保留文件,以維持內容的可存取性和完整性。 與普通的 PDF 文件相比,PDF/A 文件具有特定的限制,以確保其穩定性和自給自足性。
本文將指導您使用 QPDF 庫在 C++ 中將 PDF 文件轉換為 PDF/A 格式的過程。 QPDF,一個強大的 C++ 函式庫,使開發人員能夠以程式方式管理和轉換 PDF 文件,包括 PDF 到 PDF/A 的轉換,僅需幾行程式碼即可完成。
QPDF 是一個 C++ 程式庫和命令行工具,設計用於支援處理、轉換和解析 PDF 檔案。 它允許開發人員以程式方式訪問和操作 PDF 檔案的內容,並支援文字。 QPDF 是一個開源專案,提供多種功能,包括加密、解密、線性化、優化和 PDF/A 合規。
在開始之前,確保您已完成以下設定:
Code::Blocks IDE: 從官方網站(Code::Blocks 官方網站)下載並安裝 Code::Blocks。
開啟 Code::Blocks: 啟動您電腦上的 Code::Blocks IDE。
建立新專案:在頂部菜單中點選文件,然後選擇新建,接著選擇專案。
選擇專案類型: 在 從範本新增 視窗中,選擇 主控台應用程式,然後點選 執行。 選擇C/C++語言,然後點擊下一步。
輸入專案詳細資訊:在專案名稱欄位提供專案名稱(例如,「PDFtoPDFA」)。 選擇儲存專案檔案的位置,然後按一下下一步。
要在 Code::Blocks 中包含 QPDF 頭文件,請按照以下步驟操作:
在選單中點擊 專案。
從內容選單中選擇建置選項。
在建置選項對話框中,前往搜尋目錄標籤。
在編譯器選項卡中,點擊新增按鈕,然後瀏覽到包含 QPDF 標頭檔案的目錄(通常位於include文件夾中)。
然後,在Link頁籤中,點擊新增按鈕,並包括lib和bin目錄。
單擊OK以關閉構建選項對話框。
此外,您需要在連結階段與 QPDF 庫建立連接。 請依照以下步驟操作:
在構建選項對話框中,轉到鏈接器設置標籤。
在鏈接庫下,點擊添加,然後瀏覽到包含 QPDF 庫文件的目錄(通常在 Windows 上具有.a 或 .lib 文件擴展名)。
再次點擊新增,並輸入 QPDF 函式庫的名稱(例如,libqpdf.a 或 qpdf.lib)。
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
這段代碼包含了用於 C++ 標準輸入/輸出(iostream
)和 QPDF 庫的基本標頭文件。
在主函數(C++ 程式的起點)中,設定輸入和輸出文件的路徑:
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
這兩行聲明並初始化了兩個類型為std::string
的變數。 這些行聲明並初始化輸入 ("input.pdf") 和輸出 PDF/A ("output.pdfa") 路徑的變數。
輸入文件是一個可編輯的表單:
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
創建了一個名為input_pdf
的QPDF
對象。 使用 processFile
函數處理 input_pdf
物件,將輸入檔案路徑作為參數傳遞。
QPDFWriter
物件以寫入 PDF/A 檔案QPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
QPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
已創建一個QPDFWriter
對象writer
來寫入輸出PDF/A文件。
writer.setQDFMode(true);
writer.write();
writer.setQDFMode(true);
writer.write();
此程式碼通過對writer
物件使用setQDFMode(true)
來設置 PDF/A 遵從性。 write()
函式將 PDF 文件進行轉換,並將輸出儲存為 PDF/A 文件。
輸出文件是不可編輯且符合 PDF/A 標準的:
IronPDF Library 是一個 .NET PDF 程式庫,提供處理 PDF 文件的全面功能。 它允許開發人員使用C#或VB.NET創建、修改和轉換PDF文檔。 用戶可以使用IronPDF從HTML、ASPX、Word文件(.doc)或圖像動態生成PDF文件,並納入豐富元素,如圖表、表格和影像數據(如JPG、PNG格式)。 它還能合併、拆分和編輯現有 PDF 文件的頁面,並提取文本和操作 PDF 數據內容。
IronPDF 只需幾行代碼即可輕鬆將 PDF 轉換為PDF/A-3b 格式標準。 以下程式碼有助於完成此任務:
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);
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);
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)
本文將指導您如何使用 QPDF 庫將標準 PDF 文檔轉換為 PDF/A 格式的 C++ 轉換過程。 PDF/A 合規性確保了內容的保存和可访问性,使其成为归档的理想选择。
IronPDF還支持將各種格式轉換,如HTML、圖片和Word文件轉換為PDF檔案。 如需進一步的資訊,請造訪此IronPDF 使用說明頁面。
IronPDF 提供IronPDF 的免費試用版,以測試其商業製作功能。 直接從首頁下載 IronPDF。