Générer du HTML en PNG avec PHP est un besoin courant pour créer des miniatures, des aperçus d’e‑mail et des rapports. Aspose.HTML Cloud SDK for PHP fournit une bibliothèque puissante qui rend la conversion côté serveur simple. Dans ce guide, vous apprendrez comment configurer le SDK, définir les options de conversion, exécuter un exemple de code complet et réaliser la même tâche avec des appels REST cURL pour des flux de travail automatisés.
Conversion HTML en PNG avec PHP - Guide étape par étape
- Installez le SDK via Composer : Utilisez la commande officielle de Composer pour ajouter la bibliothèque à votre projet.
composer require aspose-html-cloud
- Configurez vos identifiants Aspose Cloud: Créez un objet
Configurationet définissez votreAppSidet votreAppKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
- Initialiser l’API Convert : Instancier
ConvertApiavec l’objet de configuration.
$convertApi = new ConvertApi($config);
- Définir les options de conversion : Définissez le format de sortie, les dimensions, la qualité et la couleur d’arrière-plan à l’aide de
ConvertOptions.
$options = new ConvertOptions();
$options->setOutputFormat('png');
$options->setWidth(1024);
$options->setHeight(0); // Preserve aspect ratio
$options->setQuality(90);
$options->setBackgroundColor('#FFFFFF');
- Effectuer la conversion : Appelez
convertLocalavec le fichier HTML source et le chemin PNG de destination.
try {
$convertApi->convertLocal($inputHtmlPath, $outputPngPath, $options);
echo "Conversion successful: {$outputPngPath}\n";
} catch (Exception $e) {
echo "Conversion failed: " . $e->getMessage() . "\n";
}
Pour des informations détaillées sur les classes et les méthodes, consultez la référence API.
HTML vers PNG en PHP - Exemple de code complet
Cet exemple montre comment convertir un fichier HTML local en image PNG en utilisant le 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
// -----------------------------------------------------------------------------
?>
Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour les chemins de fichiers (
sample.html,sample.png, etc.) pour qu’ils correspondent à vos emplacements réels, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Convertir HTML en PNG à l’aide de cURL et de l’API REST
Les commandes cURL suivantes montrent comment réaliser la même conversion HTML en PNG en utilisant l’Aspose.HTML Cloud REST API.
- Obtenez un jeton d’accès (remplacez les espaces réservés par vos identifiants client).
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"
- Téléchargez le fichier HTML source vers le stockage.
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"
- Demandez la conversion en 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"}'
- Télécharger le fichier PNG généré.
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/sample.png" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o sample.png
Pour une liste complète des paramètres et des options supplémentaires, consultez la documentation officielle de l’API.
Prérequis et configuration pour Aspose.HTML Cloud SDK for PHP
Avant de commencer, assurez‑vous d’avoir :
- PHP 7.4 ou version ultérieure installé.
- Composer installé sur votre machine de développement.
- Un compte Aspose Cloud avec des
AppSidetAppKeyvalides.
Installez le SDK à l’aide de Composer:
composer require aspose-html-cloud
Vous pouvez télécharger le dernier package depuis la page de publication officielle : Aspose.HTML Cloud SDK for PHP Release.
Configurez vos informations d’identification comme indiqué dans la section des étapes, puis vous êtes prêt à commencer la conversion de HTML en PNG.
Conclusion
La conversion de HTML en PNG en PHP devient facile avec le Aspose.HTML Cloud SDK for PHP. La bibliothèque gère le rendu, le redimensionnement et l’optimisation d’image côté serveur, éliminant ainsi le besoin d’un navigateur ou d’outils externes. En suivant le guide étape par étape, vous pouvez intégrer la génération de PNG de haute qualité dans n’importe quelle application PHP, que ce soit pour la création de vignettes, le rendu d’e‑mails ou la génération de rapports. N’oubliez pas d’obtenir une licence appropriée pour une utilisation en production ; les détails de tarification sont disponibles sur la page produit, et une licence temporaire peut être obtenue depuis la page de licence temporaire pendant que vous évaluez la bibliothèque.
FAQs
-
Comment le HTML en PNG fonctionne-t-il en PHP sans navigateur ?
Le Aspose.HTML Cloud SDK for PHP rend le HTML en utilisant son propre moteur de rendu sur le serveur, donc aucun navigateur ni Chrome sans tête n’est requis. -
Puis-je contrôler les dimensions et la qualité de l’image ?
Oui. Utilisez la classeConvertOptionspour définir la largeur, la hauteur, la qualité (0‑100) et la couleur d’arrière-plan avant d’appeler l’API Convert. -
Est-il possible de convertir en batch plusieurs fichiers HTML en PNG ? Absolument. Parcourez votre liste de fichiers, réutilisez la même instance
ConvertApiet ajustez les chemins d’entrée et de sortie à chaque itération. -
Quel type de licence est nécessaire pour les projets commerciaux ?
Une licence payante est requise pour la production. Vous pouvez consulter les tarifs sur la page du produit et obtenir une licence d’évaluation temporaire depuis la page de licence temporaire.