تحويل مستندات 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
للحصول على مرجع كامل، راجع الوثائق الرسمية لواجهة برمجة التطبيقات.
تحليل تحويل 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، وتعليمات الإعداد لك حلاً كاملاً وجاهزًا للإنتاج يمكن دمجه في أي مشروع 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 لكل ملف. هذا النهج يتوسع جيدًا لمعالجة الدُفعات.