PDF工具 如何在C++中將PDF轉換為PDFA Curtis Chau 更新日期:7月 28, 2025 Download IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 可攜式文件格式 (PDF) 一直是跨平台共享文件的首選格式。 然而,隨著數字檔案保存的重要性增加,需求逐漸轉向使用一種標準化格式,以確保文件的長期保存和可訪問性。 PDF/A (PDFA) 格式專門為此目的設計,提供穩定且自包含的格式,適合保存檔案。 了解 PDF/A PDF/A 是一種通過 ISO 標準化的 PDF 變體,旨在隨時間推移保存文件,維持內容的可訪問性和完整性。 與普通的 PDF 文件相比,PDF/A 文件具有特定的限制,確保其堅固性和自給自足性。 本文將指導您使用 C++ 中的 QPDF 庫將 PDF 文檔轉換為 PDF/A 格式的過程。 QPDF 是一個強大的 C++ 庫,使開發者能以程式編寫的方式管理和轉換 PDF 文檔,包含 PDF 到 PDF/A 的轉換,僅需幾行代碼即可完成。 QPDF C++ 庫 QPDF 是一個 C++ 庫和命令行工具,設計用於支援處理、轉換和解析 PDF 文件。 它允許開發者以程式編寫的方式訪問和操作 PDF 文件的內容,並提供廣泛支援。 QPDF 是一個開源項目,提供一系列功能,包括加密、解密、線性化、優化和 PDF/A 合規。 準備工作 在開始之前,確保您已完成以下設置: Code::Blocks IDE: 自官方網站下載並安裝 Code::Blocks (Code::Blocks 官方網站)。 QPDF 庫: 從 QPDF 官方網站自作業系統下載最新版本的 QPDF 庫 (QPDF 官方網站)。 創建 PDF 到 PDF/A 項目 打開 Code::Blocks: 在電腦上啟動 Code::Blocks IDE。 創建新項目: 點擊頂部菜單的 文件,然後選擇 新建,再點擊 項目。 選擇項目類型: 在 新建自模板 窗口中,選擇 控制台應用程式 並單擊 前往。 選擇 C/C++ 語言並點擊 下一步。 輸入項目詳情: 在 項目標題 欄位中提供項目名稱 (例如,“PDFtoPDFA”)。 選擇保存項目文件的位置並單擊 下一步。 選擇編譯器: 選擇一個編譯器,如果需要,可以從列表中手動選擇一個。點擊 完成。 將 QPDF 添加到項目中 要在 Code::Blocks 中包括 QPDF 標頭文件,請遵循以下步驟: 點擊菜單中的 項目。 從上下文菜單中選擇 構建選項。 在 構建選項 對話框中,轉到 搜索目錄 分頁。 在 編譯器 分頁中,點擊 添加 按鈕並瀏覽到包含 QPDF 標頭文件的目錄(通常位於 include 文件夾中)。 然後,在 鏈接 分頁中,點擊 添加 按鈕並包含 lib 和 bin 目錄。 點擊 確定 以關閉 構建選項 對話框。 此外,您需要在鏈接階段與 QPDF 庫建立連接。 按照以下步驟進行: 在 構建選項 對話框中,轉到 鏈接器設置 分頁。 在 鏈接庫 下,點擊 添加,然後瀏覽到包含 QPDF 庫文件(通常在 Windows 中有 .a 或 .lib 文件擴展名)的目錄。 再次點擊 添加,輸入 QPDF 庫的名稱(例如,libqpdf.a 或 qpdf.lib)。 點擊 確定 關閉 構建選項 對話框。 將 PDF 轉換為 PDF/A 文件的步驟 包含必要的標頭文件 #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. C++ 設置輸入和輸出文件的路徑 在 main 函數(C++ 程式的起始點)中,設置輸入和輸出文件的路徑: 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. C++ 為 PDF 文件創建 QPDF 對象 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. C++ 為寫入 PDF/A 文件創建 QPDFWriter 對象 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. C++ 設置 PDF/A 合規性並轉換 PDF 文件 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. C++ 輸出 輸出文件是不可編輯的並且符合 PDF/A 標準: 在 C# 中將 PDF 轉換為 PDF/A IronPDF 庫 是一個 .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); // 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. $vbLabelText $csharpLabel 結論 本文指導您使用 QPDF 庫將標準 PDF 文檔轉換為 PDF/A 格式的 C++ 過程。 PDF/A 合規性確保了內容的保存和可訪問性,使其適合於存檔。 IronPDF 還支援將 HTML、圖片和 Word 文件等多種格式轉換為 PDF 文件。 有關更多信息,請訪問 IronPDF 說明文件頁面。 IronPDF 提供IronPDF 的免費試用以測試商業生產功能。 直接從主頁下載 IronPDF。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新日期 6月 22, 2025 發現2025年最佳PDF刪除軟件 探索2025年最佳PDF刪除解決方案,包括Adobe Acrobat Pro DC、Nitro PDF Pro、Foxit PDF Editor和PDF-XChange Editor。了解IronPDF如何自動化.NET中的刪除以增強安全性和合規性。 閱讀更多 更新日期 6月 22, 2025 iPhone上最佳PDF閱讀器(免費和付費工具比較) 在本文中,我們將探索一些適合iPhone的最佳PDF閱讀器,並總結為何IronPDF脫穎而出成為最佳選擇。 閱讀更多 更新日期 6月 26, 2025 Windows上最佳免費PDF編輯器(免費和付費工具比較) 本文探討2025年可用的頂級免費PDF編輯器,並總結出最強大和靈活的選擇:IronPDF。 閱讀更多 如何在Android手機上查看PDF文件如何為PDF文件添加頁碼
更新日期 6月 22, 2025 發現2025年最佳PDF刪除軟件 探索2025年最佳PDF刪除解決方案,包括Adobe Acrobat Pro DC、Nitro PDF Pro、Foxit PDF Editor和PDF-XChange Editor。了解IronPDF如何自動化.NET中的刪除以增強安全性和合規性。 閱讀更多
更新日期 6月 22, 2025 iPhone上最佳PDF閱讀器(免費和付費工具比較) 在本文中,我們將探索一些適合iPhone的最佳PDF閱讀器,並總結為何IronPDF脫穎而出成為最佳選擇。 閱讀更多