Converter documentos HTML para o formato Word é uma necessidade frequente ao gerar relatórios, faturas ou conteúdo dinâmico para usuários finais. Aspose.HTML Cloud SDK for PHP é uma biblioteca poderosa que simplifica a conversão de HTML para DOCX no lado do servidor. Este guia orienta você por todo o fluxo de trabalho, desde a instalação e o manuseio seguro de HTML até um exemplo de código completo, pronto‑para‑produção, e recomendações de boas práticas.
Conversão de HTML para DOCX em PHP em 5 Etapas
- Instale a biblioteca Aspose.HTML Cloud: Use o Composer para adicionar o pacote ao seu projeto.
composer require aspose-html-cloud
- Autentique-se com suas credenciais Aspose Cloud: Crie um objeto
Configurationcom seu ID de cliente e segredo, então obtenha um token de acesso.
use Aspose\HTML\Configuration;
$config = new Configuration();
$config->setClientId('YOUR_CLIENT_ID');
$config->setClientSecret('YOUR_CLIENT_SECRET');
- Prepare o conteúdo HTML: Carregue o HTML de origem a partir de um arquivo ou string, e opcionalmente sanitize‑o para evitar XSS.
use Aspose\HTML\Conversion\ConversionApi;
$htmlPath = __DIR__ . '/sample.html';
$htmlContent = file_get_contents($htmlPath);
// Example sanitization (replace with a robust library for production)
$htmlContent = strip_tags($htmlContent, '<p><a><img><style><div>');
- Converta para DOCX: Chame o endpoint de conversão com o formato de saída desejado. O método principal é
convertDocument.
$apiInstance = new ConversionApi($config);
$convertRequest = new \Aspose\HTML\Model\ConvertDocumentRequest(
$htmlContent,
'HTML',
'DOCX'
);
$docxResult = $apiInstance->convertDocument($convertRequest);
file_put_contents('output.docx', $docxResult);
- Recupere e limpe: A conversão retorna um fluxo binário que você pode salvar como um arquivo DOCX. Certifique‑se de tratar erros e liberar quaisquer recursos.
if ($docxResult) {
echo "Conversion successful. DOCX saved as output.docx";
} else {
echo "Conversion failed.";
}
As etapas acima demonstram uma conversão simples de HTML para DOCX em PHP, além de mostrar onde inserir verificações de segurança e ajustes de desempenho.
Conversão de HTML para DOCX em PHP usando Aspose.HTML - Exemplo de Código Completo
O exemplo a seguir reúne todas as partes em um único script executável.
<?php
require 'vendor/autoload.php';
use Aspose\HTML\Configuration;
use Aspose\HTML\Conversion\ConversionApi;
use Aspose\HTML\Model\ConvertDocumentRequest;
// 1. Configure client credentials
$config = new Configuration();
$config->setClientId('YOUR_CLIENT_ID');
$config->setClientSecret('YOUR_CLIENT_SECRET');
// 2. Load and optionally sanitize HTML
$htmlPath = __DIR__ . '/sample.html';
$htmlContent = file_get_contents($htmlPath);
$htmlContent = strip_tags($htmlContent, '<p><a><img><style><div>');
// 3. Initialize the conversion API
$apiInstance = new ConversionApi($config);
// 4. Create conversion request (HTML -> DOCX)
$convertRequest = new ConvertDocumentRequest(
$htmlContent, // source HTML string
'HTML', // source format
'DOCX' // target format
);
// 5. Execute conversion
try {
$docxStream = $apiInstance->convertDocument($convertRequest);
file_put_contents('output.docx', $docxStream);
echo "HTML successfully converted to DOCX. File saved as output.docx";
} catch (Exception $e) {
echo 'Conversion error: ', $e->getMessage();
}
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,output.docx), 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 assistência.
Gerar documentos Word a partir de HTML via API REST usando cURL
Você também pode realizar a conversão sem escrever código PHP, chamando diretamente os endpoints REST da Aspose.HTML Cloud.
- Obter um token de acesso
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"
- Carregar o arquivo HTML de origem
curl -X PUT "https://api.aspose.cloud/v4.0/html/storage/file/sample.html" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-T sample.html
- Solicitar conversão para DOCX
curl -X POST "https://api.aspose.cloud/v4.0/html/convert?format=docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"inputPath":"sample.html","outputPath":"output.docx"}'
- Baixar o arquivo DOCX resultante
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.docx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.docx
Esses comandos cURL ilustram o fluxo completo de conversão, desde a autenticação até a recuperação do arquivo. Para mais detalhes, veja a documentação oficial da API.
Aspose.HTML Cloud SDK for PHP - Pré-requisitos e Configuração
Antes de começar a codificar, certifique‑se de que seu ambiente atenda aos seguintes requisitos:
- PHP 7.4 ou posterior
- Composer instalado globalmente
- Uma conta ativa da Aspose Cloud com credenciais de cliente válidas
Instale a biblioteca e baixe o pacote mais recente:
composer require aspose-html-cloud
Você também pode clonar o código-fonte do GitHub se preferir:
git clone https://github.com/aspose-html-cloud/aspose-html-cloud-php.git
Após a instalação, configure seu ID de cliente e segredo conforme mostrado na seção de etapas. Para uma lista completa de opções de configuração, consulte a documentação.
Aspose.HTML Cloud SDK for PHP Capacidades para Geração de DOCX de Alta Qualidade
- Renderização Precisa de CSS - A biblioteca analisa CSS externo e embutido, preservando layout, fontes e cores no DOCX gerado.
- Suporte a Fontes Incorporadas - Use regras
@font-facepara incorporar fontes personalizadas, garantindo que o documento Word tenha a mesma aparência em todas as plataformas. - Manipulação Segura de Entrada - Ganchos de sanitização integrados permitem remover tags e atributos inseguros, mitigando riscos de XSS durante a conversão.
- Controles de Desempenho - Opções como
maxImageResolutionedisableExternalResourcespermitem ajustar finamente velocidade versus fidelidade. - Processamento em Lote - A API aceita coleções de arquivos HTML, possibilitando pipelines de conversão de alta taxa de transferência.
Esses recursos tornam a biblioteca ideal para a geração de documentos no lado do servidor, onde tanto a qualidade quanto a segurança são fundamentais.
Conclusão
Converter HTML para DOCX em PHP agora é um processo simplificado graças às robustas capacidades do Aspose.HTML Cloud SDK for PHP. Seguindo as etapas, aplicando as melhores práticas de segurança e aproveitando as opções de desempenho da biblioteca, você pode gerar documentos Word que mantêm a aparência original do HTML de forma confiável. 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 você pode obter uma licença temporária para testes na página de licença temporária. Com esse conhecimento, você está pronto para integrar a conversão de alta qualidade de HTML para DOCX em suas aplicações PHP.
FAQs
-
Qual é a maneira mais simples de iniciar uma conversão de HTML para DOCX em PHP?
Use a chamadaconvertDocumentde uma linha da biblioteca Aspose.HTML Cloud após instalá‑la via Composer. O exemplo neste guia mostra o código mínimo necessário. -
Como posso proteger minha aplicação de HTML malicioso durante a conversão?
Sanitizar a entrada com uma biblioteca como HTMLPurifier ou usar os ganchos de sanitização integrados fornecidos pela biblioteca antes de enviar o conteúdo para a API de conversão. -
A biblioteca suporta a conversão de HTML que contém imagens externas?
Sim. Por padrão, recursos externos são buscados e incorporados. Você pode desativar esse comportamento com a opçãodisableExternalResourcesse preferir manter o tamanho do DOCX menor. -
Onde posso encontrar opções de configuração mais avançadas para a saída DOCX?
Todas as configurações de conversão estão documentadas na documentação oficial, incluindo opções para tamanho de página, margens e incorporação de fontes.