HTML é o formato padrão para estruturar páginas da web e armazena conteúdo em formato de texto padrão. As tags dentro do HTML definem o layout da página e o conteúdo da página da web, incluindo texto, tabelas, imagens e hiperlinks, que são exibidos no navegador da web. No entanto, por último, observou-se que scripts maliciosos podem ser incorporados em páginas HTML e podem ser usados em uma variedade de tipos diferentes de ataque, incluindo cross-site scripting (XSS). Portanto, muitas organizações/sistemas bloqueiam o carregamento de arquivos HTML compartilhados no modo offline. Portanto, uma solução viável é converter HTML em formato de imagem. Neste artigo, vamos discutir os detalhes de como converter HTML para JPG em Java.
- API de conversão de HTML para imagem
- Como converter HTML para JPG em Java
- Converta HTML para JPG usando comandos cURL
API de conversão de HTML para imagem
Vamos usar Aspose.HTML Cloud SDK for Java para realizar a conversão de HTML para imagem. Essa API fornece o recurso para carregar e manipular arquivos HTML existentes. Ao mesmo tempo, também oferece o recurso de renderizar HTML para PDF, XPS, DOCX e formatos de imagem, incluindo (JPEG, PNG, BMP e TIFF). Agora, adicione as seguintes linhas ao pom.xml do seu projeto de tipo de compilação maven para baixar e instalar o SDK.
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html-cloud</artifactId>
<version>20.7.0</version>
</dependency>
A próxima grande etapa é uma assinatura gratuita de nossos serviços em nuvem por meio do painel Aspose.Cloud usando o GitHub ou a conta do Google. Ou simplesmente crie uma nova conta e obtenha os detalhes de suas credenciais de cliente.
Como converter HTML para JPG em Java
Siga as instruções fornecidas abaixo para cumprir o requisito de conversão de HTML para JPG.
- Em primeiro lugar, precisamos especificar os detalhes dos métodos Configuration.setAPPSID e Configuration.setAPIKEY
- Em segundo lugar, definimos detalhes para setBasePath(..), setAuthPath(..) e especificamos setUserAgent(…) como WebKit
- Em terceiro lugar, para nossa própria ajuda, vamos definir setDebug(..) como true
- Agora crie um objeto da classe ConversionApi
- Especifique os detalhes da margem e o nome das informações do arquivo resultante
- Finalmente, chame GetConvertDocumentToImage(…) para iniciar o processo de conversão. Este método aceita o nome HTML de entrada, o formato da imagem resultante, a margem e os detalhes das dimensões como argumentos
// para mais exemplos, visite https://github.com/aspose-html-cloud/aspose-html-cloud-java
try
{
// Obtenha ClientID e ClientSecret em https://dashboard.aspose.cloud/
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// detalhes para invocação da 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);
// Crie um objeto de Aspose.HTML Cloud API
com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
// O documento html do armazenamento em nuvem
String name = "list.html";
// formato de imagem resultante
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
// Invoque a API para conversão de HTML para JPG
retrofit2.Call<okhttp3.ResponseBody> call = htmlApi.GetConvertDocumentToImage(name, outFormat, width, height, leftMargin, rightMargin, topMargin, bottomMargin, resolution, folder, storage);
// (método personalizado opcional para salvar o JPG resultante na unidade local)
checkAndSave(call, "resultantFile.png");
System.out.println("HTML to JPG conversion sucessfull !");
}catch(Exception ex)
{
System.out.println(ex);
}
Converta HTML para JPG usando comandos cURL
As APIs Aspose.HTML Cloud também podem ser acessadas por meio de comandos cURL usando terminais de linha de comando. Mas, como pré-requisito, precisamos primeiro gerar um JSON Web Token (JWT) com base em suas credenciais de cliente individuais. Execute o seguinte comando para gerar o token 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"
Depois que o token JWT for gerado, execute o seguinte comando no terminal para realizar a conversão de HTML para imagem.
curl -v -X GET "https://api.aspose.cloud/html/list.html/convert/image/JPG" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>"
Conclusão
Aprendemos a conversão de HTML em imagem usando trechos de código Java, bem como os detalhes sobre como podemos converter HTML em JPG usando comandos cURL. A [Documentação] do produto 13 é uma ótima fonte para conhecer outros recursos incríveis oferecidos pela API. Além disso, se você encontrar algum problema ao usar a API, sinta-se à vontade para entrar em contato com o Fórum de suporte gratuito ao produto.
Artigos relacionados
Também recomendamos visitar os seguintes blogs para obter mais detalhes sobre: