在日常工作中,我們會收到 PDF 形式的文檔,因為它們在互聯網上非常流行,用於信息共享。但是,我們可能需要防止用戶複製 PDF 文件內容,因此最簡單的方法之一是將 PDF 另存為 PNG。現在,為了執行批量轉換,編程解決方案是最快和最智能的方法。因此,在本文中,我們將討論有關如何使用 Java Cloud SDK 將 PDF 轉換為 PNG 的詳細信息。
PDF 到 PNG 轉換 API
Aspose.PDF Cloud SDK for Java 使 Java 程序員能夠引入與 PDF 文件創建、操作和轉換為各種支持格式相關的功能。因此,無需使用 Adobe Acrobat 或任何其他軟件,您就可以加載 PDF 並保存為不同的格式。現在為了開發 PDF 到 PNG 轉換器,請在 maven 構建類型項目的 pom.xml 中添加以下信息。
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf-cloud</artifactId>
<version>21.11.0</version>
</dependency>
</dependencies>
上述細節將在 Java 項目中添加 SDK 引用,現在下一個重要步驟是在 Aspose Cloud 上創建免費帳戶。因此,請使用新創建的帳戶登錄,並在 Cloud Dashboard 查找/創建客戶端 ID 和客戶端密碼。後續部分需要這些詳細信息。
在 Java 中將 PDF 轉換為 PNG
是時候使用 Java 代碼片段執行 PDF 到 PNG 的轉換了。請注意,本節中使用的 API 調用需要從雲存儲加載源 PDF 文件,如果它不可用,我們可以使用一種簡單的方法輕鬆上傳。
- 首先,我們需要創建一個 PdfApi 對象,同時提供 ClientID 和 Client secret 作為參數
- 其次,使用 File 實例加載輸入 PDF 文件
- 第三,使用 uploadFile(…) 方法將輸入的 PDF 上傳到雲存儲
- 創建定義 PDF 頁碼和結果圖像尺寸的整數對象
- 最後調用 getPageConvertToPng(…) 方法,需要輸入 PDF、頁碼和定義結果文件尺寸的可選參數。轉換後,生成的圖像作為響應流返回
try
{
// 從 https://dashboard.aspose.cloud/ 獲取 ClientID 和 ClientSecret
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// 創建 PdfApi 的實例
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// 輸入 PDF 文檔的名稱
String inputFile = "PdfWithScreenAnnotations.pdf";
// 讀取輸入PDF文件的內容
File file = new File("//Users//"+inputFile);
// 上傳PDF到雲存儲
pdfApi.uploadFile("input.pdf", file, null);
// 要轉換的 PDF 的特定頁面
int pageNumber =2;
// 生成的 PNG 圖像的寬度
int width = 800;
// 生成的 PNG 圖像的高度
int height = 1024;
// 調用API在線將PDF轉PNG
pdfApi.getPageConvertToPng("input.pdf", pageNumber, width, height, null, null);
// 打印成功信息
System.out.println("PDF to PNG Successsul !");
}catch(Exception ex)
{
System.out.println(ex);
}
如果我們需要將 PDF 保存為 PNG 並將輸出保存到雲存儲,請按照下面指定的說明進行操作。
- 首先,我們需要創建一個 PdfApi 對象,同時提供 ClientID 和 Client secret 作為參數
- 其次,使用 File 實例加載輸入 PDF 文件
- 第三,使用 uploadFile(…) 方法將輸入的 PDF 上傳到雲存儲
- 現在創建字符串變量,保存生成的 PNG 的路徑詳細信息,以及定義生成的 PNG 的頁碼和尺寸的整數對象
- 最後調用 putPageConvertToPng(…) 方法,需要輸入 PDF、結果 PNG 的路徑、頁碼和定義結果文件尺寸的可選參數
try
{
// 從 https://dashboard.aspose.cloud/ 獲取 ClientID 和 ClientSecret
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// 創建 PdfApi 的實例
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// 輸入 PDF 文檔的名稱
String inputFile = "PdfWithScreenAnnotations.pdf";
// 讀取輸入PDF文件的內容
File file = new File("//Users//"+inputFile);
// 上傳PDF到雲存儲
pdfApi.uploadFile("input.pdf", file, null);
// 生成的 PNG 圖像的名稱
String resultant = "Resultant.png";
// 要轉換的 PDF 的特定頁面
int pageNumber =2;
// 生成的 PNG 圖像的寬度
int width = 800;
// 生成的 PNG 圖像的高度
int height = 1024;
// 調用API在線將PDF轉PNG
pdfApi.putPageConvertToPng("input.pdf", pageNumber, resultant, width, height, null, null);
// 打印成功信息
System.out.println("Save PDF as PNG Successsul !");
}catch(Exception ex)
{
System.out.println(ex);
}
上例中使用的示例 PDF 文件可以從 PdfWithScreenAnnotations.pdf 下載
使用 cURL 命令將 PDF 保存為 PNG
cURL 命令也是通過命令行終端訪問 REST API 的便捷方式之一。現在,此方法的先決條件是在執行以下命令時生成 JWT 訪問令牌(基於客戶端憑據)。
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
獲得 JWT 令牌後,我們需要執行以下命令將 PDF 保存為 PNG。現在為了在本地保存文件,我們只使用 -o 參數並將輸出保存在本地驅動器上。
curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/input.pdf/pages/2/convert/png?width=800&height=1000" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o resultant.png
結論
本文幫助我們使用 Java Cloud SDK 開發 PDF 到 PNG 轉換器。我們已經看到了使用 Java 代碼片段將 PDF 轉換為 PNG 的示例,並且我們已經了解了使用 cURL 命令將 PDF 保存為 PNG 的步驟。我們還提供從 GitHub 下載 Java Cloud SDK 完整源代碼的槓桿,您可以根據您的要求修改它(它在 MIT 許可下發布)。如有任何問題,您可以考慮通過免費的 產品支持論壇 聯繫我們尋求快速解決方案。
相關文章
我們強烈建議訪問以下鏈接以了解更多信息: