Генерація HTML у PNG за допомогою PHP є поширеною потребою для створення мініатюр, попередніх переглядів електронної пошти та звітів. Aspose.HTML Cloud SDK for PHP надає потужну бібліотеку, яка спрощує серверну конвертацію. У цьому посібнику ви дізнаєтеся, як налаштувати SDK, налаштувати параметри конвертації, запустити повний приклад коду та виконати те ж саме за допомогою cURL REST‑викликів для автоматизованих робочих процесів.

Конвертування HTML у PNG у PHP — покроковий посібник

  1. Встановіть SDK за допомогою Composer: Використайте офіційну команду Composer, щоб додати бібліотеку до вашого проєкту.
composer require aspose-html-cloud
  1. Налаштуйте ваші облікові дані Aspose Cloud: Створіть об’єкт Configuration і встановіть ваші AppSid та AppKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setAppKey('YOUR_APP_KEY');
  1. Ініціалізуйте Convert API: Створіть екземпляр ConvertApi з об’єктом конфігурації.
$convertApi = new ConvertApi($config);
  1. Встановити параметри конвертації: Визначте формат виводу, розміри, якість та колір фону за допомогою ConvertOptions.
$options = new ConvertOptions();
$options->setOutputFormat('png');
$options->setWidth(1024);
$options->setHeight(0);               // Preserve aspect ratio
$options->setQuality(90);
$options->setBackgroundColor('#FFFFFF');
  1. Виконайте перетворення: Викличте convertLocal з вихідним HTML‑файлом та шляхом до PNG‑файлу призначення.
try {
    $convertApi->convertLocal($inputHtmlPath, $outputPngPath, $options);
    echo "Conversion successful: {$outputPngPath}\n";
} catch (Exception $e) {
    echo "Conversion failed: " . $e->getMessage() . "\n";
}

Для докладної інформації про класи та методи зверніться до довідки API.

HTML у PNG у PHP - Повний приклад коду

Цей приклад демонструє, як конвертувати локальний HTML‑файл у PNG‑зображення за допомогою 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
// -----------------------------------------------------------------------------
?>

Примітка: Цей приклад коду демонструє основну функціональність. Перш ніж використовувати його у вашому проєкті, переконайтеся, що оновили шляхи до файлів (sample.html, sample.png тощо), щоб вони відповідали вашим реальним розташуванням файлів, перевірте, що усі необхідні залежності правильно встановлені, і ретельно протестуйте у вашому середовищі розробки. Якщо ви зіткнетеся з будь‑якими проблемами, будь ласка, зверніться до офіційної документації або до команди підтримки за допомогою.

Конвертування HTML у PNG за допомогою cURL та REST API

Наступні команди cURL показують, як досягти тієї ж конвертації HTML у PNG за допомогою Aspose.HTML Cloud REST API.

  1. Отримайте токен доступу (замініть заповнювачі вашими обліковими даними клієнта).
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"
  1. Завантажте вихідний HTML файл у сховище.
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"
  1. Запит на конвертацію у 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"}'
  1. Завантажте згенерований файл PNG.
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/sample.png" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o sample.png

Для повного списку параметрів та додаткових опцій перегляньте офіційну документацію API.

Вимоги та налаштування для Aspose.HTML Cloud SDK for PHP

Перш ніж розпочати, переконайтеся, що у вас є:

  • PHP 7.4 або новішої версії встановлено.
  • Composer встановлений на вашій машині розробки.
  • Обліковий запис Aspose Cloud з дійсними AppSid та AppKey.

Встановіть SDK за допомогою Composer:

composer require aspose-html-cloud

Ви можете завантажити останній пакет з офіційної сторінки випуску: Aspose.HTML Cloud SDK for PHP Release.

Налаштуйте свої облікові дані, як показано в розділі кроків, і тоді ви будете готові розпочати конвертацію HTML у PNG.

Висновок

Перетворення HTML у PNG у PHP стає легким завдяки Aspose.HTML Cloud SDK for PHP. Бібліотека виконує рендеринг, масштабування та оптимізацію зображень на стороні сервера, усуваючи потребу у браузері або зовнішніх інструментах. Дотримуючись покрокового посібника, ви можете інтегрувати генерацію PNG високої якості у будь‑який PHP‑додаток, будь то створення мініатюр, рендеринг електронної пошти або формування звітів. Пам’ятайте про необхідність отримання належної ліцензії для використання у продакшн‑середовищі; деталі цін доступні на сторінці продукту, а тимчасову ліцензію можна отримати зі сторінки тимчасової ліцензії під час оцінки бібліотеки.

FAQs

  • Як працює перетворення HTML у PNG у PHP без браузера?
    Aspose.HTML Cloud SDK for PHP рендерить HTML, використовуючи власний движок рендерингу на сервері, тому браузер або безголовий Chrome не потрібні.

  • Чи можу я керувати розмірами та якістю зображення?
    Так. Використовуйте клас ConvertOptions, щоб встановити ширину, висоту, якість (0‑100) та колір фону перед викликом Convert API.

  • Чи можливо пакетно конвертувати кілька HTML‑файлів у PNG?
    Звичайно. Пройдіться по списку файлів, повторно використайте той самий екземпляр ConvertApi і налаштуйте шляхи вхідних та вихідних файлів для кожної ітерації.

  • Яке ліцензування потрібне для комерційних проєктів?
    Для продакшну потрібна платна ліцензія. Ви можете переглянути ціни на сторінці продукту та отримати тимчасову оцінювальну ліцензію на сторінці тимчасової ліцензії.

Читати далі