تولید HTML به PNG در PHP یک نیاز رایج برای ایجاد تصویر بندانگشتی، پیش‌نمایش ایمیل و گزارش‌ها است. Aspose.HTML Cloud SDK for PHP کتابخانه قدرتمندی را فراهم می‌کند که تبدیل سمت سرور را به‌صورت ساده انجام می‌دهد. در این راهنما خواهید آموخت که چگونه SDK را تنظیم کنید، گزینه‌های تبدیل را پیکربندی کنید، یک مثال کامل کد را اجرا کنید و همان کار را با تماس‌های REST cURL برای گردش‌کارهای خودکار انجام دهید.

تبدیل 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 یکپارچه کنید، چه برای ایجاد تصویر بندانگشتی، رندرینگ ایمیل یا تولید گزارش. به‌خاطر داشته باشید برای استفاده در تولید، یک لایسنس مناسب تهیه کنید؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید یک لایسنس موقت را از صفحه لایسنس موقت دریافت کنید در حالی که کتابخانه را ارزیابی می‌کنید.

سوالات متداول

  • چگونه HTML به PNG در PHP بدون مرورگر کار می‌کند؟
    Aspose.HTML Cloud SDK for PHP HTML را با استفاده از موتور رندرینگ خود در سرور رندر می‌کند، بنابراین نیازی به مرورگر یا headless Chrome نیست.

  • آیا می‌توانم ابعاد و کیفیت تصویر را کنترل کنم؟
    بله. از کلاس ConvertOptions برای تنظیم عرض، ارتفاع، کیفیت (0‑100) و رنگ پس‌زمینه قبل از فراخوانی API تبدیل استفاده کنید.

  • آیا می‌توان چندین فایل HTML را به صورت دسته‌ای به PNG تبدیل کرد؟
    مطمئناً. فهرست فایل‌های خود را پیمایش کنید، همان نمونه ConvertApi را دوباره استفاده کنید، و مسیرهای ورودی و خروجی را برای هر تکرار تنظیم کنید.

  • برای پروژه‌های تجاری چه مجوزی لازم است؟
    برای تولید نیاز به یک مجوز پرداختی است. می‌توانید قیمت‌گذاری را در صفحه محصول مشاهده کنید و یک مجوز ارزیابی موقت از صفحه مجوز موقت دریافت کنید.

بیشتر بخوانید