HTML в зображення

Як перетворити HTML на зображення в Java

HTML є фактичним форматом для структурування веб-сторінок і зберігає вміст у стандартному текстовому форматі. Теги всередині HTML визначають макет сторінки та вміст веб-сторінки, включаючи текст, таблиці, зображення та гіперпосилання, які відображаються у веб-браузері. Однак, нарешті, було помічено, що шкідливі сценарії можуть бути вбудовані в сторінки HTML і використовуватися в різних типах атак, включаючи міжсайтовий сценарій (XSS). Тому багато організацій/систем блокують завантаження HTML-файлів, наданих у офлайн-режимі. Отже, ефективним рішенням є перетворення HTML у формат зображення. У цій статті ми збираємося обговорити деталі того, як конвертувати HTML у JPG у Java.

API перетворення HTML у зображення

Ми збираємося використовувати Aspose.HTML Cloud SDK для Java для виконання перетворення HTML у зображення. Цей API надає можливість завантажувати існуючі файли HTML і керувати ними. У той же час він також пропонує функцію відтворення HTML у PDF, XPS, DOCX і форматах зображень, зокрема (JPEG, PNG, BMP і TIFF). Тепер, будь ласка, додайте наступні рядки до pom.xml вашого проекту типу збірки maven, щоб завантажити та встановити SDK.

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

Наступним важливим кроком є безкоштовна підписка на наші хмарні сервіси через інформаційну панель Aspose.Cloud за допомогою облікового запису GitHub або Google. Або просто створіть новий обліковий запис і отримайте свої облікові дані клієнта.

Як конвертувати HTML у JPG на Java

Дотримуйтеся наведених нижче інструкцій, щоб виконати вимогу щодо перетворення HTML у JPG.

  • Перш за все, нам потрібно вказати деталі методів Configuration.setAPPSID і Configuration.setAPIKEY
  • По-друге, ми встановлюємо деталі для setBasePath(..), setAuthPath(..) і визначаємо setUserAgent(…) як WebKit
  • По-третє, для нашої власної допомоги ми збираємося встановити setDebug(..) як true
  • Тепер створіть об’єкт класу ConversionApi
  • Укажіть деталі полів і ім’я інформації для отриманого файлу
  • Нарешті, викличте GetConvertDocumentToImage(…), щоб розпочати процес перетворення. Цей метод приймає вхідну назву HTML, результуючий формат зображення, поля та деталі розмірів як аргументи
// для отримання додаткових прикладів відвідайте https://github.com/aspose-html-cloud/aspose-html-cloud-java

try
    {
    // Отримайте ClientID і ClientSecret з https://dashboard.aspose.cloud/
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
  
    // деталі для виклику 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);
        
    // Створіть об’єкт Aspose.HTML Cloud API
    com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
     	
    // Документ html з хмарного сховища
    String name = "list.html";
    // формат отриманого зображення
    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
    	
    // Викликати API для перетворення HTMl у JPG
    retrofit2.Call<okhttp3.ResponseBody> call = htmlApi.GetConvertDocumentToImage(name, outFormat, width, height, leftMargin, rightMargin, topMargin, bottomMargin, resolution, folder, storage);
    
    // (додатковий спеціальний метод для збереження отриманого JPG на локальному диску)
    checkAndSave(call, "resultantFile.png");
  
    System.out.println("HTML to JPG conversion sucessfull !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

Перетворіть HTML у JPG за допомогою команд cURL

Доступ до хмарних API Aspose.HTML також можна отримати за допомогою команд cURL за допомогою терміналів командного рядка. Але в якості попередньої умови нам потрібно спочатку згенерувати веб-токен JSON (JWT) на основі облікових даних вашого індивідуального клієнта. Виконайте наступну команду, щоб створити маркер 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"

Після створення маркера JWT виконайте наступну команду на терміналі, щоб виконати перетворення HTML у зображення.

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

Висновок

Ми навчилися перетворювати HTML у зображення за допомогою фрагментів коду Java, а також дізналися, як ми можемо конвертувати HTML у JPG за допомогою команд cURL. Продукт Документація є чудовим джерелом для вивчення інших дивовижних можливостей, які пропонує API. Крім того, якщо у вас виникнуть проблеми під час використання API, будь ласка, зв’яжіться з безкоштовним форумом підтримки продуктів.

Схожі статті

Ми також рекомендуємо відвідати наступні блоги, щоб дізнатися більше про: