تحويل ملفات PPT و PPTX إلى JPG في PHP
حول تحويل PowerPoint إلى JPG
مع Aspose.Slides API يمكنك تحويل عرض PowerPoint PPT أو PPTX إلى صورة JPG. كما يمكنك أيضًا تحويل PPT/PPTX إلى JPEG أو PNG أو SVG. باستخدام هذه الميزات يصبح من السهل تنفيذ عارض العروض الخاص بك، وإنشاء صورة مصغرة لكل شريحة. قد يكون هذا مفيدًا إذا كنت تريد حماية شرائح العرض من النسخ، أو عرض العرض في وضع القراءة فقط. يتيح Aspose.Slides تحويل العرض بالكامل أو شريحة معينة إلى صيغ صور.
[
تحويل PowerPoint PPT/PPTX إلى JPG
فيما يلي الخطوات لتحويل PPT/PPTX إلى JPG:
- إنشاء نسخة من النوع Presentation.
- الحصول على كائن الشريحة من النوع ISlide من مجموعة Presentation.getSlides().
- إنشاء صورة مصغرة لكل شريحة ثم تحويلها إلى JPG. تُستخدم طريقة ISlide.getImage(float scaleX, float scaleY) للحصول على صورة مصغرة للشريحة، وتُعيد كائن Images كنتيجة. يجب استدعاء طريقة getImage من الشريحة المطلوبة من النوع ISlide، حيث يتم تمرير مقاييس الصورة المصغرة الناتجة إلى الطريقة.
- بعد الحصول على الصورة المصغرة للشريحة، استدعِ طريقة [IImage.save(String formatName, int imageFormat)](https://reference.aspose.com/slides/php-java/aspose.slides/IImage#save(String formatName, int imageFormat)) من كائن الصورة المصغرة. مرّر اسم الملف الناتج وصيغة الصورة إليها.
$pres = new Presentation("PowerPoint-Presentation.pptx");
try {
foreach($pres->getSlides() as $sld) {
# ينشئ صورة بمقياس كامل
$slideImage = $sld->getImage(1.0, 1.0);
# يحفظ الصورة على القرص بتنسيق JPEG
try {
$slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
تحويل PowerPoint PPT/PPTX إلى JPG بأبعاد مخصصة
لتغيير أبعاد الصورة المصغرة الناتجة وصورة JPG، يمكنك تعيين قيم ScaleX و ScaleY بتمريرهما إلى طرق ISlide.getImage(float scaleX, float scaleY).
$pres = new Presentation("PowerPoint-Presentation.pptx");
try {
# يعرّف الأبعاد
$desiredX = 1200;
$desiredY = 800;
# يحصل على القيم المقاسة لـ X و Y
$ScaleX = 1.0 / $pres->getSlideSize()->getSize()->getWidth() * $desiredX;
$ScaleY = 1.0 / $pres->getSlideSize()->getSize()->getHeight() * $desiredY;
foreach($pres->getSlides() as $sld) {
# ينشئ صورة بمقياس كامل
$slideImage = $sld->getImage($ScaleX, $ScaleY);
# يحفظ الصورة على القرص بتنسيق JPEG
try {
$slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
عرض التعليقات عند حفظ الشرائح كصور
يوفر Aspose.Slides للـ PHP عبر Java ميزة تتيح لك عرض التعليقات في شرائح العرض عند تحويل تلك الشرائح إلى صور. يوضح هذا الكود PHP العملية:
$pres = new Presentation("presentation.pptx");
try {
$notesOptions = new NotesCommentsLayoutingOptions();
$notesOptions->setNotesPosition(NotesPositions::BottomTruncated);
$opts = new RenderingOptions();
$opts->setSlidesLayoutOptions($notesOptions);
foreach($pres->getSlides() as $sld) {
$slideImage = $sld->getImage($opts, new Java("java.awt.Dimension", 740, 960));
try {
$slideImage->save(String->format("Slide_%d.png", $sld->getSlideNumber()));
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Tip
Aspose يقدم تطبيق ويب FREE Collage مجاني. باستخدام هذه الخدمة عبر الإنترنت، يمكنك دمج صور JPG إلى JPG أو PNG إلى PNG، وإنشاء شبكات صور، وما إلى ذلك.
باستخدام نفس المبادئ الموضحة في هذه المقالة، يمكنك تحويل الصور من صيغة إلى أخرى. لمزيد من المعلومات، راجع هذه الصفحات: تحويل image to JPG; تحويل JPG to image; تحويل JPG to PNG، تحويل PNG to JPG; تحويل PNG to SVG، تحويل SVG to PNG.
الأسئلة الشائعة
هل يدعم هذه الطريقة التحويل على دفعات؟ نعم، يتيح Aspose.Slides التحويل الجماعي لعدة شرائح إلى JPG في عملية واحدة.
هل يدعم التحويل SmartArt والرسوم البيانية وغيرها من الكائنات المعقدة؟ نعم، يقوم Aspose.Slides بعرض جميع المحتويات، بما في ذلك SmartArt والرسوم البيانية والجداول والأشكال وغيرها. ومع ذلك، قد تختلف دقة العرض قليلًا مقارنةً بـ PowerPoint، خاصةً عند استخدام خطوط مخصصة أو مفقودة.
هل هناك أي قيود على عدد الشرائح التي يمكن معالجتها؟ لا يفرض Aspose.Slides نفسه أي حدود صارمة على عدد الشرائح التي يمكنك معالجتها. ومع ذلك، قد تواجه خطأ نفاد الذاكرة عند العمل على عروض تقديمية كبيرة أو صور ذات دقة عالية.
انظر أيضًا
انظر خيارات أخرى لتحويل PPT/PPTX إلى صورة مثل: