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 Web Token (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, обращайтесь на Бесплатный форум поддержки продуктов.

Статьи по Теме

Мы также рекомендуем посетить следующие блоги для получения дополнительной информации о: