Gerar HTML para PNG em PHP é uma necessidade comum para criar miniaturas, visualizações de e‑mail e relatórios. Aspose.HTML Cloud SDK for PHP fornece uma biblioteca poderosa que torna a conversão no lado do servidor simples. Neste guia você aprenderá como configurar o SDK, definir opções de conversão, executar um exemplo de código completo e realizar a mesma tarefa com chamadas REST via cURL para fluxos de trabalho automatizados.
Conversão de HTML para PNG em PHP - Guia passo a passo
- Instale o SDK via Composer: Use o comando oficial do Composer para adicionar a biblioteca ao seu projeto.
composer require aspose-html-cloud
- Configure suas credenciais Aspose Cloud: Crie um objeto
Configuratione defina seuAppSideAppKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
- Inicialize a Convert API: Instancie
ConvertApicom o objeto de configuração.
$convertApi = new ConvertApi($config);
- Defina as opções de conversão: Defina o formato de saída, dimensões, qualidade e cor de fundo usando
ConvertOptions.
$options = new ConvertOptions();
$options->setOutputFormat('png');
$options->setWidth(1024);
$options->setHeight(0); // Preserve aspect ratio
$options->setQuality(90);
$options->setBackgroundColor('#FFFFFF');
- Execute a conversão: Chame
convertLocalcom o arquivo HTML de origem e o caminho de destino PNG.
try {
$convertApi->convertLocal($inputHtmlPath, $outputPngPath, $options);
echo "Conversion successful: {$outputPngPath}\n";
} catch (Exception $e) {
echo "Conversion failed: " . $e->getMessage() . "\n";
}
Para informações detalhadas sobre classes e métodos, consulte a referência da API.
HTML para PNG em PHP - Exemplo de Código Completo
Este exemplo demonstra como converter um arquivo HTML local em uma imagem PNG usando o Aspose.HTML Cloud SDK for PHP.
<?php
require __DIR__ . '/vendor/autoload.php';
use Aspose\HTML\Cloud\Configuration;
use Aspose\HTML\Cloud\Api\ConvertApi;
use Aspose\HTML\Cloud\Model\ConvertOptions;
// -----------------------------------------------------------------------------
// Configuration – replace with your actual Aspose Cloud credentials
// -----------------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
// -----------------------------------------------------------------------------
// Initialize the Convert API
// -----------------------------------------------------------------------------
$convertApi = new ConvertApi($config);
// -----------------------------------------------------------------------------
// Define source HTML and destination PNG paths (generic, adjust as needed)
// -----------------------------------------------------------------------------
$inputHtmlPath = __DIR__ . '/sample.html';
$outputPngPath = __DIR__ . '/sample.png';
// -----------------------------------------------------------------------------
// Set conversion options – adjust width/height, quality, and background color
// -----------------------------------------------------------------------------
$options = new ConvertOptions();
$options->setOutputFormat('png'); // Target format
$options->setWidth(1024); // Desired width (pixels)
$options->setHeight(0); // Height 0 preserves aspect ratio
$options->setQuality(90); // PNG compression level (0‑100)
$options->setBackgroundColor('#FFFFFF'); // Optional background for transparent pages
// -----------------------------------------------------------------------------
// Perform the conversion
// -----------------------------------------------------------------------------
try {
$convertApi->convertLocal($inputHtmlPath, $outputPngPath, $options);
echo "Conversion successful: {$outputPngPath}\n";
} catch (Exception $e) {
echo "Conversion failed: " . $e->getMessage() . "\n";
}
// -----------------------------------------------------------------------------
// No explicit cleanup required – SDK handles temporary resources internally
// -----------------------------------------------------------------------------
?>
Nota: Este exemplo de código demonstra a funcionalidade principal. Antes de usá‑lo em seu projeto, certifique‑se de atualizar os caminhos dos arquivos (
sample.html,sample.png, etc.) para corresponder às suas localizações reais, verifique se todas as dependências necessárias estão devidamente instaladas e teste minuciosamente em seu ambiente de desenvolvimento. Se encontrar algum problema, consulte a documentação oficial ou entre em contato com a equipe de suporte para obter ajuda.
Converter HTML em PNG usando cURL e a API REST
Os seguintes comandos cURL mostram como realizar a mesma conversão de HTML para PNG usando a Aspose.HTML Cloud REST API.
- Obtenha um token de acesso (substitua os marcadores pelos seus credenciais de cliente).
curl -X POST "https://api.aspose.cloud/connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
- Carregue o arquivo HTML de origem para o armazenamento.
curl -X PUT "https://api.aspose.cloud/v4.0/html/storage/file/sample.html" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/html" \
--data-binary "@sample.html"
- Solicite a conversão para PNG.
curl -X POST "https://api.aspose.cloud/v4.0/html/convert?format=png&width=1024&quality=90&backgroundColor=%23FFFFFF" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"inputPath":"sample.html","outputPath":"sample.png"}'
- Baixe o arquivo PNG gerado.
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/sample.png" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o sample.png
Para obter uma lista completa de parâmetros e opções adicionais, consulte a documentação oficial da API.
Pré-requisitos e Configuração para Aspose.HTML Cloud SDK for PHP
Antes de começar, certifique-se de que você tem:
- PHP 7.4 ou posterior instalado.
- Composer instalado na sua máquina de desenvolvimento.
- Uma conta Aspose Cloud com
AppSideAppKeyválidos.
Instale o SDK usando o Composer:
composer require aspose-html-cloud
Você pode baixar o pacote mais recente na página oficial de lançamento: Aspose.HTML Cloud SDK for PHP Release.
Configure suas credenciais como mostrado na seção de etapas, então você está pronto para iniciar a conversão de HTML para PNG.
Conclusão
Converter HTML para PNG em PHP torna‑se fácil com o Aspose.HTML Cloud SDK for PHP. A biblioteca lida com renderização, dimensionamento e otimização de imagens no lado do servidor, eliminando a necessidade de um navegador ou ferramentas externas. Seguindo o guia passo a passo, você pode integrar a geração de PNG de alta qualidade em qualquer aplicação PHP, seja para criação de miniaturas, renderização de e‑mail ou geração de relatórios. Lembre‑se de adquirir uma licença adequada para uso em produção; detalhes de preços estão disponíveis na página do produto, e uma licença temporária pode ser obtida na página de licença temporária enquanto você avalia a biblioteca.
Perguntas Frequentes
-
Como o HTML para PNG em PHP funciona sem um navegador?
O Aspose.HTML Cloud SDK for PHP renderiza HTML usando seu próprio mecanismo de renderização no servidor, portanto nenhum navegador ou Chrome headless é necessário. -
Posso controlar as dimensões e a qualidade da imagem?
Sim. Use a classeConvertOptionspara definir largura, altura, qualidade (0‑100) e cor de fundo antes de chamar a API de Conversão. -
É possível converter em lote vários arquivos HTML para PNG?
Absolutamente. Percorra sua lista de arquivos, reutilize a mesma instânciaConvertApie ajuste os caminhos de entrada e saída em cada iteração. -
Qual licença é necessária para projetos comerciais?
É necessária uma licença paga para produção. Você pode ver os preços na página do produto e obter uma licença de avaliação temporária na página de licença temporária.