Преобразование документов Word в предварительные изображения часто требуется при создании веб‑порталов или инструментов отчетности. Aspose.OMR Cloud SDK for PHP позволяет разработчикам PHP программно конвертировать DOCX в JPG в PHP с высокой точностью. В этом руководстве вы увидите полный пример на PHP, эквивалентный рабочий процесс cURL REST и всё, что необходимо для подготовки окружения. К концу вы получите переиспользуемое решение, которое можно интегрировать в любое PHP‑приложение.

Полный рабочий пример конвертации DOCX в JPG на PHP с использованием Aspose.OMR Cloud SDK

В этом примере демонстрируется, как использовать Aspose.OMR Cloud SDK for PHP для преобразования файла DOCX в изображение JPG.

<?php
require __DIR__ . '/vendor/autoload.php';

use Aspose\OMR\Configuration;
use Aspose\OMR\Api\ConvertApi;
use Aspose\OMR\Model\ConvertDocumentRequest;
use Aspose\OMR\ApiException;

// -----------------------------------------------------------------------------
// Configuration – replace with your actual credentials
// -----------------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setApiKey('YOUR_API_KEY');

// -----------------------------------------------------------------------------
// Initialize the Convert API
// -----------------------------------------------------------------------------
$convertApi = new ConvertApi($config);

// -----------------------------------------------------------------------------
// File paths (adjust as needed)
// -----------------------------------------------------------------------------
$inputDocxPath  = __DIR__ . '/input.docx';
$outputJpgPath  = __DIR__ . '/output.jpg';

// -----------------------------------------------------------------------------
// Prepare request – stream the input file to avoid loading whole file into memory
// -----------------------------------------------------------------------------
$inputStream = fopen($inputDocxPath, 'rb');
if ($inputStream === false) {
    throw new RuntimeException("Unable to open input file: $inputDocxPath");
}

$request = new ConvertDocumentRequest();
$request->setFile($inputStream);          // Input DOCX stream
$request->setOutputFormat('jpg');         // Desired output format
$request->setOutputFileName('output.jpg'); // Optional: name for the generated file

try {
    // -------------------------------------------------------------------------
    // Perform conversion
    // -------------------------------------------------------------------------
    $responseStream = $convertApi->convertDocument($request);

// -------------------------------------------------------------------------
    // Write the resulting JPG to disk using a buffered copy (efficient for large files)
    // -------------------------------------------------------------------------
    $outputHandle = fopen($outputJpgPath, 'wb');
    if ($outputHandle === false) {
        throw new RuntimeException("Unable to open output file: $outputJpgPath");
    }

while (!feof($responseStream)) {
        $buffer = fread($responseStream, 8192);
        if ($buffer === false) {
            throw new RuntimeException('Error reading from response stream.');
        }
        fwrite($outputHandle, $buffer);
    }

fclose($outputHandle);
    fclose($inputStream);
    fclose($responseStream);

echo "Conversion successful. JPG saved to: $outputJpgPath\n";
} catch (ApiException $e) {
    // -------------------------------------------------------------------------
    // Handle API errors (e.g., authentication, unsupported format)
    // -------------------------------------------------------------------------
    fclose($inputStream);
    echo 'API Exception: ', $e->getMessage(), PHP_EOL;
    exit(1);
} catch (Exception $e) {
    // -------------------------------------------------------------------------
    // General error handling
    // -------------------------------------------------------------------------
    if (is_resource($inputStream)) {
        fclose($inputStream);
    }
    echo 'Error: ', $e->getMessage(), PHP_EOL;
    exit(1);
}

Примечание: Этот пример кода демонстрирует основную функциональность. Прежде чем использовать его в вашем проекте, убедитесь, что обновили все пути к файлам и значения конфигурации в соответствии с вашей реальной средой, проверьте, что все необходимые зависимости правильно установлены, и тщательно протестируйте в вашей среде разработки. Если возникнут проблемы, обратитесь к официальной документации или свяжитесь с командой поддержки для получения помощи.

Преобразование DOCX в JPG через REST API с использованием cURL

Если вы предпочитаете чистый REST‑подход, то то же преобразование можно выполнить с помощью нескольких команд cURL.

  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. Загрузите файл DOCX – используйте токен из предыдущего шага.
curl -X PUT "https://api.aspose.cloud/v4.0/omr/storage/file/input.docx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document" \
  --data-binary "@input.docx"
  1. Запрос конвертации в JPG.
curl -X POST "https://api.aspose.cloud/v4.0/omr/convert" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
        "FileName": "input.docx",
        "OutputFormat": "jpg",
        "OutputFileName": "output.jpg"
      }' -o response.json
  1. Скачать сгенерированный JPG
curl -X GET "https://api.aspose.cloud/v4.0/omr/storage/file/output.jpg" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -o output.jpg

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

Разбор преобразования DOCX в JPG в PHP с помощью Aspose.OMR Cloud SDK

Следующее нумерованное разбиение объясняет каждую часть PHP‑кода, который выполняет конвертацию DOCX в JPG в рабочем процессе PHP.

  1. Настройка конфигурации - Класс Configuration хранит ваш AppSid и ApiKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setApiKey('YOUR_API_KEY');
  1. Инициализация API - Создается экземпляр ConvertApi с конфигурацией.
$convertApi = new ConvertApi($config);
  1. Подготовка входного потока - Файл DOCX открывается как бинарный поток, чтобы избежать загрузки всего файла в память.
$inputStream = fopen($inputDocxPath, 'rb');
  1. Создание запроса - ConvertDocumentRequest устанавливает входной поток, желаемый формат вывода (jpg) и необязательное имя выходного файла.
$request = new ConvertDocumentRequest();
$request->setFile($inputStream);
$request->setOutputFormat('jpg');
$request->setOutputFileName('output.jpg');
  1. Выполнение конвертации и сохранение результата – convertDocument возвращает поток ответа, который записывается в output.jpg с использованием буферного копирования.
$responseStream = $convertApi->convertDocument($request);
$outputHandle = fopen($outputJpgPath, 'wb');
while (!feof($responseStream)) {
    $buffer = fread($responseStream, 8192);
    fwrite($outputHandle, $buffer);
}

Для получения более подробной информации о классе ConvertApi обратитесь к справочнику API.

Подготовка среды для Aspose.OMR Cloud SDK в PHP

  1. Установите SDK через Composer
composer require aspose/aspose-omr-cloud

Пакет также можно скачать со страницы страница релизов.

  1. Проверьте версию PHP - SDK требует PHP 7.2 или новее.

  2. Настройте учетные данные - Замените YOUR_APP_SID и YOUR_API_KEY в коде значениями из вашей учетной записи Aspose Cloud.

  3. Автозагрузка зависимостей - Файл vendor/autoload.php, сгенерированный Composer, загружает все необходимые классы.

После выполнения этих шагов вы готовы конвертировать DOCX в JPG в PHP с использованием Aspose.OMR Cloud SDK.

Заключение

Теперь вы знаете, как эффективно конвертировать DOCX в JPG в PHP с помощью Aspose.OMR Cloud SDK. Предоставленный пример кода, REST cURL workflow и инструкции по настройке дают вам полное, готовое к производству решение, которое можно интегрировать в любой PHP‑проект, включая приложения Laravel. Для коммерческого использования приобретите лицензию на странице продукта Aspose.OMR Cloud SDK for PHP; временная лицензия также доступна на странице временной лицензии. Начните конвертировать свои документы Word в высококачественные JPG‑изображения уже сегодня.

Часто задаваемые вопросы

Как я могу конвертировать DOCX в JPG в PHP?
Используйте Aspose.OMR Cloud SDK for PHP. После установки SDK и настройки ваших учетных данных пример кода PHP выше показывает точные шаги для конвертации файла DOCX в изображение JPG.

Можно ли конвертировать DOCX в JPG в Laravel на PHP?
Да. SDK работает с любой PHP‑фреймворком, включая Laravel. Разместите логику конвертации внутри контроллера или сервисного класса и вызывайте её из ваших маршрутов.

Как лучше всего конвертировать DOCX в JPG высокого разрешения на PHP?
Отрегулируйте параметры разрешения вывода (если поддерживается) в запросе на конвертацию. SDK позволяет указать настройки DPI в теле запроса для получения JPG более высокого качества.

Могу ли я конвертировать несколько DOCX в JPG в PHP с помощью одного скрипта?
Конечно. Пройдитесь по массиву путей к файлам DOCX, повторно используйте тот же экземпляр ConvertApi и вызывайте convertDocument для каждого файла. Такой подход хорошо масштабируется для пакетной обработки.

Читать дальше