Portable Network Graphic (PNG) 是一種基於位圖格式的光柵圖像類型,廣泛用於網站顯示高質量數字圖像。這種格式很受歡迎,因為它提供無損壓縮和更廣泛和更明亮的調色板。但是,在圖像編輯方面,編輯 PNG 圖像中的單個對象幾乎是不可能的。但是,如果我們有一個 PSD 文件(默認的 Adobe Photoshop 格式),則編輯此類圖像非常容易。因此,在本文中,我們將討論有關如何使用 REST API 在移動設備或 PC 上將 PNG 轉換為 PSD 的所有細節。
PSD 到 PNG 轉換 API
為了以編程方式將一個圖像轉換為另一種圖像格式,Aspose.Imaging Cloud SDK for Java 是一個了不起的解決方案。您可以選擇以編程方式編輯、操作光柵圖像、圖元文件和 Photoshop 文件並將其轉換為各種支持的格式。這個單一的 SDK 能夠將 PNG 轉換為 PSD,反之亦然。因此,使用更少的代碼行,您可以輕鬆地執行 PNG 到 PSD 的轉換。
現在,為了開始使用 SDK,我們需要在我們的 Java 項目中添加它的引用,方法是在 pom.xml(maven 構建類型項目)中包含以下信息。
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>http://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging-cloud</artifactId>
<version>22.4</version>
</dependency>
</dependencies>
如果您已經在 Aspose Cloud 上註冊,請從 Dashboard 獲取您的客戶端憑據。否則,您需要先使用有效的電子郵件地址註冊一個免費帳戶。
在 Java 中將 PNG 轉換為 PSD
本節詳細介紹瞭如何使用 Java 代碼片段將 PNG 轉換為 PSD。
- 首先,在傳遞您的個性化客戶端憑據時創建一個 ImagingApi 對象。
- 其次,使用 readAllBytes(…) 方法加載 PNG 文件並將值返回給 byte[] 數組。
- 第三,創建一個 UploadFileRequest 實例,同時將 PNG 名稱作為參數傳遞,並使用 uploadFile(…) 方法將其上傳到雲存儲。
- 現在創建一個 ConvertImageRequest 對象,它將輸入的 PNG 名稱和結果格式 (PSD) 作為參數。
- 調用方法 convertImage(…) 將 PNG 格式轉換為 PSD 格式並將輸出作為響應流返回。
- 最後,使用 FileOutputStream 對象將生成的 PSD 保存到本地驅動器。
// 從 https://dashboard.aspose.cloud/ 獲取 ClientID 和 ClientSecret
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// 創建成像對象
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// 從本地驅動器加載 png 圖像
File file1 = new File("input.png");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// 創建文件上傳請求對象
UploadFileRequest uploadRequest = new UploadFileRequest("input.png",imageStream,null);
// 上傳PNG圖像到雲存儲
imageApi.uploadFile(uploadRequest);
// 指定圖像的輸出格式
String format = "psd";
// 創建圖像轉換請求對象
ConvertImageRequest convertImage = new ConvertImageRequest("input.png", format, null, null);
// 將 PNG 轉換為 PSD 並在響應流中返回圖像
byte[] resultantImage = imageApi.convertImage(convertImage);
// 將生成的 PSD 保存到本地驅動器
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.psd");
fos.write(resultantImage);
fos.close();
上例中使用的示例 PNG 圖像和 PSD 文件可以分別從 PinClipart.png 和 Converted.psd 下載。
使用 cURL 命令將 PNG 轉為 PSD
可以通過 cURL 命令(通過命令行終端)輕鬆訪問 REST API。因此,在本節中,我們將探討如何使用 cURL 命令執行 PNG 到 PSD 轉換的詳細信息。現在,作為先決條件,我們需要使用以下命令生成 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"
現在請執行以下命令將 PNG 格式轉換為 PSD 格式並將輸出保存在本地驅動器上。
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.png/convert?format=psd" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o Converted.psd
結論
到本文結束時,我們已經探索瞭如何使用 Java REST API 將 PNG 轉換為 PSD 的所有細節。同樣,我們還探索了使用 cURL 命令將 PNG 轉換為 PSD 的選項。除了這些方法之外,API 的功能可以使用 SwaggerUI(在網絡瀏覽器中)輕鬆測試。此外,SDK 的完整源代碼可在 GitHub(根據 MIT 許可發布)上獲得。您可以考慮根據您的要求下載和修改它。
然而,產品文檔 是學習和探索 API 提供的其他令人興奮的功能的絕佳信息來源。最後,如果您在使用 API 時遇到任何問題,您可以考慮通過免費的 產品支持論壇 聯繫我們尋求快速解決方案。
相關文章
請訪問以下鏈接以了解更多信息: