Đồ họa mạng di động (PNG) là một loại hình ảnh raster dựa trên định dạng bitmap và được sử dụng rộng rãi trên các trang web để hiển thị hình ảnh kỹ thuật số chất lượng cao. Định dạng này phổ biến vì nó cung cấp khả năng nén không mất dữ liệu và bảng màu rộng hơn và sáng hơn nhiều. Tuy nhiên, khi chỉnh sửa hình ảnh, gần như không thể chỉnh sửa các đối tượng riêng lẻ bên trong hình ảnh PNG. Tuy nhiên, nếu chúng ta có tệp PSD (định dạng mặc định của Adobe Photoshop), thì việc chỉnh sửa những hình ảnh đó khá dễ dàng. Vì vậy, trong bài viết này, chúng ta sẽ thảo luận tất cả các chi tiết về cách chuyển đổi PNG sang PSD trên Di động hoặc PC bằng API REST.
API chuyển đổi PSD sang PNG
Để chuyển đổi một hình ảnh sang định dạng hình ảnh khác theo chương trình, Aspose.Imaging Cloud SDK for Java là một giải pháp tuyệt vời. Bạn có tùy chọn để chỉnh sửa, thao tác và chuyển đổi hình ảnh raster, siêu tệp và tệp Photoshop theo chương trình sang nhiều định dạng được hỗ trợ. SDK duy nhất này có khả năng chuyển đổi PNG sang PSD và ngược lại. Vì vậy, với ít dòng mã hơn, bạn có thể dễ dàng thực hiện chuyển đổi PNG sang PSD.
Bây giờ, để bắt đầu sử dụng SDK, chúng ta cần thêm tham chiếu của nó vào dự án Java của mình bằng cách đưa thông tin sau vào pom.xml (dự án kiểu xây dựng 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>
Nếu bạn đã đăng ký trên Aspose Cloud, vui lòng lấy thông tin đăng nhập khách hàng của bạn từ Dashboard. Nếu không, trước tiên bạn cần đăng ký một tài khoản miễn phí bằng địa chỉ email hợp lệ.
Chuyển đổi PNG sang PSD trong Java
Phần này giải thích chi tiết về cách chuyển đổi PNG sang PSD bằng đoạn mã Java.
- Đầu tiên, tạo một đối tượng ImagingApi trong khi chuyển thông tin xác thực ứng dụng khách được cá nhân hóa của bạn.
- Thứ hai, tải tệp PNG bằng phương thức readAllBytes(…) và trả về giá trị cho mảng byte[].
- Thứ ba, tạo một phiên bản của UploadFileRequest trong khi chuyển tên PNG làm đối số và tải nó lên bộ nhớ đám mây bằng phương thức uploadFile(…) .
- Bây giờ hãy tạo một đối tượng ConvertImageRequest lấy tên PNG đầu vào và định dạng kết quả (PSD) làm đối số.
- Gọi phương thức convertImage(…) để chuyển đổi định dạng PNG sang PSD và trả về đầu ra dưới dạng luồng phản hồi.
- Cuối cùng, lưu PSD kết quả vào ổ đĩa cục bộ bằng đối tượng FileOutputStream.
// Nhận ClientID và ClientSecret từ https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// tạo đối tượng hình ảnh
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// tải hình ảnh png từ ổ đĩa cục bộ
File file1 = new File("input.png");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// tạo đối tượng yêu cầu tải tệp lên
UploadFileRequest uploadRequest = new UploadFileRequest("input.png",imageStream,null);
// tải hình ảnh PNG lên bộ nhớ đám mây
imageApi.uploadFile(uploadRequest);
// chỉ định định dạng đầu ra của hình ảnh
String format = "psd";
// Tạo đối tượng yêu cầu chuyển đổi hình ảnh
ConvertImageRequest convertImage = new ConvertImageRequest("input.png", format, null, null);
// chuyển đổi PNG sang PSD và trả về hình ảnh trong luồng phản hồi
byte[] resultantImage = imageApi.convertImage(convertImage);
// Lưu PSD kết quả vào ổ đĩa cục bộ
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.psd");
fos.write(resultantImage);
fos.close();
Bạn có thể tải xuống tệp PSD và hình ảnh PNG mẫu được sử dụng trong ví dụ trên từ PinClipart.png và Converted.psd, tương ứng.
PNG sang PSD bằng lệnh cURL
Có thể dễ dàng truy cập các API REST thông qua các lệnh cURL (thông qua thiết bị đầu cuối dòng lệnh). Vì vậy, trong phần này, chúng ta sẽ khám phá chi tiết cách thực hiện chuyển đổi PNG sang PSD bằng các lệnh cURL. Bây giờ, như một điều kiện tiên quyết, chúng tôi cần tạo mã thông báo truy cập JWT (dựa trên thông tin đăng nhập của khách hàng) bằng cách sử dụng lệnh sau.
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"
Bây giờ hãy thực hiện lệnh sau để chuyển đổi định dạng PNG sang PSD và lưu kết quả đầu ra trên ổ đĩa cục bộ.
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
Phần kết luận
Đến cuối bài viết này, chúng ta đã khám phá tất cả các chi tiết về cách chúng ta có thể chuyển đổi PNG sang PSD bằng Java REST API. Tương tự, chúng tôi cũng đã khám phá một tùy chọn để chuyển đổi PNG sang PSD bằng các lệnh cURL. Ngoài những cách tiếp cận này, các tính năng của API có thể dễ dàng được kiểm tra bằng cách sử dụng SwaggerUI (trong trình duyệt web). Hơn nữa, mã nguồn hoàn chỉnh của SDK có sẵn trên GitHub (xuất bản theo giấy phép MIT). Bạn có thể cân nhắc tải xuống và sửa đổi nó theo yêu cầu của mình.
Tuy nhiên, tài liệu sản phẩm là một nguồn thông tin tuyệt vời để tìm hiểu và khám phá các tính năng thú vị khác do API cung cấp. Cuối cùng, trong trường hợp gặp phải bất kỳ sự cố nào khi sử dụng API, bạn có thể cân nhắc liên hệ với chúng tôi để được giải quyết nhanh chóng thông qua diễn đàn hỗ trợ sản phẩm miễn phí.
Những bài viết liên quan
Vui lòng truy cập các liên kết sau để tìm hiểu thêm về: