Преобразование документов 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.
- Получите токен доступа - замените заполнители вашими учетными данными клиента.
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"
- Загрузите файл 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"
- Запрос конвертации в 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
- Скачать сгенерированный 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.
- Настройка конфигурации - Класс
Configurationхранит вашAppSidиApiKey.
$config = new Configuration();
$config->setAppSid('YOUR_APP_SID');
$config->setApiKey('YOUR_API_KEY');
- Инициализация API - Создается экземпляр
ConvertApiс конфигурацией.
$convertApi = new ConvertApi($config);
- Подготовка входного потока - Файл DOCX открывается как бинарный поток, чтобы избежать загрузки всего файла в память.
$inputStream = fopen($inputDocxPath, 'rb');
- Создание запроса -
ConvertDocumentRequestустанавливает входной поток, желаемый формат вывода (jpg) и необязательное имя выходного файла.
$request = new ConvertDocumentRequest();
$request->setFile($inputStream);
$request->setOutputFormat('jpg');
$request->setOutputFileName('output.jpg');
- Выполнение конвертации и сохранение результата –
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
- Установите SDK через Composer
composer require aspose/aspose-omr-cloud
Пакет также можно скачать со страницы страница релизов.
-
Проверьте версию PHP - SDK требует PHP 7.2 или новее.
-
Настройте учетные данные - Замените
YOUR_APP_SIDиYOUR_API_KEYв коде значениями из вашей учетной записи Aspose Cloud. -
Автозагрузка зависимостей - Файл
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 для каждого файла. Такой подход хорошо масштабируется для пакетной обработки.