HTML sang hình ảnh

Cách chuyển đổi HTML sang Hình ảnh trong Java

HTML là định dạng defacto để cấu trúc các trang web và nó lưu trữ nội dung ở định dạng văn bản tiêu chuẩn. Các thẻ bên trong HTML xác định bố cục trang và nội dung của trang web, bao gồm văn bản, bảng, hình ảnh và siêu liên kết, được hiển thị trong trình duyệt web. Tuy nhiên, cuối cùng, người ta đã quan sát thấy rằng các tập lệnh độc hại có thể được nhúng vào bên trong các trang HTML và có thể được sử dụng trong nhiều kiểu tấn công khác nhau, bao gồm cả cross-site scripting (XSS). Do đó, nhiều tổ chức/hệ thống chặn tải các tệp HTML được chia sẻ ở chế độ ngoại tuyến. Vì vậy, một giải pháp khả thi là chuyển đổi HTML sang định dạng Hình ảnh. Trong bài viết này, chúng ta sẽ thảo luận chi tiết về cách chuyển đổi HTML sang JPG trong Java.

API chuyển đổi HTML sang hình ảnh

Chúng tôi sẽ sử dụng Aspose.HTML Cloud SDK cho Java để thực hiện chuyển đổi HTML sang Hình ảnh. API này cung cấp tính năng để tải và thao tác các tệp HTML hiện có. Đồng thời, nó cũng cung cấp tính năng kết xuất HTML thành PDF, XPS, DOCX và các định dạng hình ảnh bao gồm (JPEG, PNG, BMPTIFF). Bây giờ vui lòng thêm các dòng sau vào tệp pom.xml của dự án kiểu xây dựng maven của bạn để tải xuống và cài đặt SDK.

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html-cloud</artifactId>
<version>20.7.0</version>
</dependency>

Bước quan trọng tiếp theo là đăng ký miễn phí các dịch vụ đám mây của chúng tôi thông qua Bảng điều khiển Aspose.Cloud bằng tài khoản GitHub hoặc Google. Hoặc, chỉ cần tạo Tài khoản mới và nhận thông tin chi tiết Thông tin xác thực khách hàng của bạn.

Cách chuyển đổi HTML sang JPG trong Java

Vui lòng làm theo hướng dẫn dưới đây để hoàn thành yêu cầu chuyển đổi HTML sang JPG.

  • Trước hết, chúng ta cần chỉ định chi tiết đối với các phương thức Configuration.setAPPSID và Configuration.setAPIKEY
  • Thứ hai, chúng tôi đặt chi tiết cho setBasePath(..), setAuthPath(..) và chỉ định setUserAgent(…) làm WebKit
  • Thứ ba, để được hỗ trợ, chúng tôi sẽ đặt setDebug(..) là true
  • Bây giờ hãy tạo một đối tượng của lớp ConversionApi
  • Chỉ định chi tiết lề và tên cho thông tin cho tệp kết quả
  • Cuối cùng, hãy gọi GetConvertDocumentToImage(…) để bắt đầu quá trình chuyển đổi. Phương thức này chấp nhận tên HTML đầu vào, định dạng hình ảnh kết quả, lề và chi tiết kích thước làm đối số
// để biết thêm ví dụ, vui lòng truy cập https://github.com/aspose-html-cloud/aspose-html-cloud-java

try
    {
    // Nhận ClientID và ClientSecret từ https://dashboard.aspose.cloud/
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
  
    // chi tiết cho lời gọi Api
    com.aspose.html.Configuration.setAPP_SID(clientId);
    com.aspose.html.Configuration.setAPI_KEY(clientSecret);
    com.aspose.html.Configuration.setBasePath("https://api.aspose.cloud/v3.0");
    com.aspose.html.Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
    com.aspose.html.Configuration.setUserAgent("WebKit");
    com.aspose.html.Configuration.setDebug(true);
        
    // Tạo một đối tượng của Aspose.HTML Cloud API
    com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
     	
    // Tài liệu html từ lưu trữ đám mây
    String name = "list.html";
    // định dạng hình ảnh kết quả
    String outFormat = "PNG";
    	
    Integer width = 800; // Resulting image width.
    Integer height = 1000; // Resulting image height.
    Integer leftMargin = 10; // Left resulting image margin.
    Integer rightMargin = 10; // Right resulting image margin.
    Integer topMargin = 10; // Top resulting image margin.
    Integer bottomMargin = 10; // Bottom resulting image margin.
    Integer resolution = 300; // Resolution of resulting image.
    String folder = null; // The folder in the storage. Should exist.
    String storage = "Internal"; // Name of the storage. null
    	
    // Gọi API để chuyển đổi HTMl sang JPG
    retrofit2.Call<okhttp3.ResponseBody> call = htmlApi.GetConvertDocumentToImage(name, outFormat, width, height, leftMargin, rightMargin, topMargin, bottomMargin, resolution, folder, storage);
    
    // (phương pháp tùy chỉnh tùy chọn để lưu JPG kết quả vào ổ đĩa cục bộ)
    checkAndSave(call, "resultantFile.png");
  
    System.out.println("HTML to JPG conversion sucessfull !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

Chuyển đổi HTML sang JPG bằng Lệnh cURL

Aspose.HTML Cloud API cũng có thể được truy cập thông qua các lệnh cURL bằng thiết bị đầu cuối dòng lệnh. Nhưng như một điều kiện tiên quyết, trước tiên chúng tôi cần tạo Mã thông báo web JSON (JWT) dựa trên thông tin đăng nhập khách hàng cá nhân của bạn. Vui lòng thực hiện lệnh sau để tạo mã thông báo JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Khi mã thông báo JWT đã được tạo, vui lòng thực hiện lệnh sau trên thiết bị đầu cuối để thực hiện chuyển đổi HTML sang Hình ảnh.

curl -v -X GET "https://api.aspose.cloud/html/list.html/convert/image/JPG" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>"

Phần kết luận

Chúng ta đã học cách chuyển đổi HTML sang Hình ảnh bằng cách sử dụng các đoạn mã Java cũng như các chi tiết về cách chúng ta có thể chuyển đổi HTML sang JPG bằng các lệnh cURL. Sản phẩm Tài liệu là một nguồn tuyệt vời để tìm hiểu các khả năng tuyệt vời khác do API cung cấp. Ngoài ra, nếu bạn gặp phải bất kỳ sự cố nào khi sử dụng API, vui lòng liên hệ với Diễn đàn hỗ trợ sản phẩm miễn phí.

Những bài viết liên quan

Chúng tôi cũng khuyên bạn nên truy cập các blog sau để biết thêm chi tiết về: