PDF/A是一種ISO標準的PDF檔案格式版本,是為長期保存檔案而設計的,它提供了一種工具,使電子檔案在長時間之后依然以一種保留其外觀的方式重現,而不管該檔案是用什么工具和系統創建、儲存或制作的,這種保留方式使PDF檔案可自我持續,PDF/A通過嵌入在檔案自身內部顯示該檔案的資訊(內容、顏色、字體、影像,等等),存盤這種自我持續,換句話說,PDF/A檔案不要求任何附加的外部資訊才能適當地顯示,本文將介紹如何通過C#/VB.NET代碼,以編程方式將PDF轉換為PDF/A-1A、2A、3A、1B、2B 和 3B兼容的PDF,
程式環境:
本次測驗時,在程式中引入 Free Spire.PDF.dll 檔案,
方法1:
將??Free Spire.PDF for .NET?? 下載到本地,解壓,找到 BIN 檔案夾下的 Spire.PDF.dll,然后在 Visual Studio 中打開“解決方案資源管理器”,滑鼠右鍵點擊“參考”,“添加參考”,將本地路徑 BIN 檔案夾下的 dll 檔案添加參考至程式,
方法2::
通過?NuGet??安裝,可通過以下 2 種方法安裝:
1. 可以在 Visual Studio 中打開“解決方案資源管理器”,滑鼠右鍵點擊“參考”,“管理 NuGet 包”,然后搜索“Free Spire.PDF”,點擊“安裝”,等待程式安裝完成,
2. 將以下內容復制到 PM 控制臺安裝,
Install-Package FreeSpire.PDF -Version 8.6.0
將PDF轉為PDF/A
將PDF轉換為PDF/A-1A、2A、3A、1B、2B 和 3B兼容PDF的詳細步驟如下:
- 指定輸入檔案路徑和輸出檔案夾
- 創建一個 PdfStandardsConverter 實體并將輸入檔案作為引數傳入,
- 使用 PdfStandardsConverter.ToPdfA1A() 方法將輸入檔案轉換為 PdfA1A 一致性級別,
- 使用 PdfStandardsConverter.ToPdfA1B() 方法將輸入檔案轉換為 PdfA1B 一致性級別,
- 使用 PdfStandardsConverter.ToPdfA2A() 方法將輸入檔案轉換為 PdfA2A 一致性級別,
- 使用 PdfStandardsConverter.ToPdfA2B() 方法將輸入檔案轉換為 PdfA2B 一致性級別,
- 使用 PdfStandardsConverter.ToPdfA3A() 方法將輸入檔案轉換為 PdfA3A 一致性級別,
- 使用 PdfStandardsConverter.ToPdfA3B() 方法將輸入檔案轉換為 PdfA3B 一致性級別,
完整代碼
【C#】
using System; using Spire.Pdf.Conversion; namespace ConvertPdf2PdfA { class Program { static void Main(string[] args) { //指定輸入檔案路徑 String inputFile = "成都第31屆世界大學生夏季運動會.pdf"; //指定輸出檔案的存放檔案夾 String outputFolder = @"D:\VS2022專案\free PDF\bin\Debug\輸出結果\"; //創建PdfStandardsConverter物件,傳入輸入檔案路徑 PdfStandardsConverter converter = new PdfStandardsConverter(inputFile); //轉換為PdfA1A converter.ToPdfA1A(outputFolder + "ToPdfA1A.pdf"); //轉換為PdfA1B converter.ToPdfA1B(outputFolder + "ToPdfA1B.pdf"); //轉換為PdfA2A converter.ToPdfA2A(outputFolder + "ToPdfA2A.pdf"); //轉換為PdfA2B converter.ToPdfA2B(outputFolder + "ToPdfA2B.pdf"); //轉換為PdfA3A converter.ToPdfA3A(outputFolder + "ToPdfA3A.pdf"); //轉換為PdfA3B converter.ToPdfA3B(outputFolder + "ToPdfA3B.pdf"); } } }
【VB.NET】
Imports Spire.Pdf.Conversion Namespace ConvertPdf2PdfA Friend Class Program Private Shared Sub Main(ByVal args As String()) '指定輸入檔案路徑 Dim inputFile = "成都第31屆世界大學生夏季運動會.pdf" '指定輸出檔案的存放檔案夾 Dim outputFolder = "D:\VS2022專案\free PDF\bin\Debug\輸出結果\" '創建PdfStandardsConverter物件,傳入輸入檔案路徑 Dim converter As PdfStandardsConverter = New PdfStandardsConverter(inputFile) '轉換為PdfA1A converter.ToPdfA1A(outputFolder & "ToPdfA1A.pdf") '轉換為PdfA1B converter.ToPdfA1B(outputFolder & "ToPdfA1B.pdf") '轉換為PdfA2A converter.ToPdfA2A(outputFolder & "ToPdfA2A.pdf") '轉換為PdfA2B converter.ToPdfA2B(outputFolder & "ToPdfA2B.pdf") '轉換為PdfA3A converter.ToPdfA3A(outputFolder & "ToPdfA3A.pdf") '轉換為PdfA3B converter.ToPdfA3B(outputFolder & "ToPdfA3B.pdf") End Sub End Class End Namespace
效果圖
—本文完—
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/548304.html
標籤:.NET技术