在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
可攜式文件格式(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。
建立新專案: 在頂部菜單中點擊檔案,然後選擇新增,接著選擇專案。
選擇專案類型: 在 從範本創建新專案 的視窗中,選擇 控制臺應用程式,然後點擊 Go。 選擇 C/C++ 語言,然後點擊 下一步。
輸入專案詳細資訊: 請在專案名稱欄位中提供專案名稱(例如:"PDFtoPDFA"). 選擇專案文件的儲存位置,然後點擊下一步。
要在 Code::Blocks 中包含 QPDF 頭文件,請按照以下步驟操作:
在選單中點擊專案。
從右鍵選單中選擇建置選項。
在構建選項對話框中,前往搜索目錄選項卡。
在編譯器標籤中,點擊添加按鈕,然後瀏覽到包含 QPDF 頭文件的目錄。(通常位於 include 資料夾中).
然後,在鏈接標籤中,點擊添加按鈕,並包含lib和bin目錄。
按 確定 關閉 建置選項 對話框。
此外,您需要在連結階段與 QPDF 庫建立連接。 請依照以下步驟操作:
在构建选项对话框中,转到链接器设置选项卡。
在 Link Libraries 下,點擊 Add,然後瀏覽到包含 QPDF 庫文件的目錄。(通常在 Windows 上具有 .a 或 .lib 文件擴展名).
再次單擊 Add,然後輸入 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());
一個名為writer
的QPDFWriter
對象被創建用於寫入輸出PDF/A文件。
writer.setQDFMode(true);
writer.write();
writer.setQDFMode(true);
writer.write();
此代碼使用 setQDFMode
設置 PDF/A 合規性(真)在
writer物件上。
write()
function 對 PDF 文件進行轉換,並將輸出保存為 PDF/A 文件。
輸出文件是不可編輯且符合 PDF/A 標準的:
IronPDF Library是一個 .NET PDF 函式庫,提供全面的功能來處理 PDF 文件。 它允許開發人員使用C#或VB.NET創建、修改和轉換PDF文檔。 用戶可以使用 IronPDF 從 HTML、ASPX、Word 文件生成 PDF 文件。(.doc)或動態地將圖像結合並納入圖表、表格和圖像資料等豐富元素(如 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.