إدارة إطارات الصورة في العروض التقديمية باستخدام PHP
Contents
[
Hide
]
المقدمة
إطار الصورة هو شكل يحتوي على صورة — إنه كالصورة داخل إطار.
يمكنك إضافة صورة إلى شريحة عبر إطار صورة. بهذه الطريقة، يمكنك تنسيق الصورة من خلال تنسيق إطار الصورة.
نصيحة
توفر Aspose محولات مجانية — JPEG إلى PowerPoint وPNG إلى PowerPoint — تتيح للناس إنشاء عروض تقديمية بسرعة من الصور.إنشاء إطار صورة
- إنشاء مثيل من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إنشاء كائن PPImage بإضافة صورة إلى ImageCollection المرتبط بكائن العرض الذي سيُستخدم لملء الشكل.
- تحديد عرض الصورة وارتفاعها.
- إنشاء PictureFrame بناءً على عرض وارتفاع الصورة عبر طريقة
addPictureFrameالتي يُ exposedها كائن الشكل المرتبط بالشريحة المرجعية. - إضافة إطار صورة (المحتوي على الصورة) إلى الشريحة.
- كتابة العرض المعدل كملف PPTX.
هذا الكود PHP يوضح كيفية إنشاء إطار صورة:
# يخلق مثالًا من فئة Presentation التي تمثل ملف PPTX
$pres = new Presentation();
try {
# يحصل على الشريحة الأولى
$sld = $pres->getSlides()->get_Item(0);
# يخلق مثالًا من فئة Image
$imgx = $pres->getImages()->addImage(new Java("java.io.FileInputStream", new Java("java.io.File", "asp1.jpg")));
# يضيف إطار صورة بالارتفاع والعرض المتطابقين للصورة
$sld->getShapes()->addPictureFrame(ShapeType::Rectangle, 50, 150, $imgx->getWidth(), $imgx->getHeight(), $imgx);
# يكتب ملف PPTX إلى القرص
$pres->save("RectPicFrame.pptx", SaveFormat::Pptx);
} catch (JavaException $e) {
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
تسمح إطارات الصورة بإنشاء شرائح عرض بسرعة بناءً على الصور. عند دمج إطار الصورة مع خيارات الحفظ Aspose.Slides، يمكنك التحكم بعمليات الإدخال/الإخراج لتحويل الصور من تنسيق إلى آخر. قد ترغب في الاطلاع على هذه الصفحات: تحويل صورة إلى JPG; تحويل JPG إلى صورة; تحويل JPG إلى PNG، تحويل PNG إلى JPG; تحويل PNG إلى SVG، تحويل SVG إلى PNG.
إنشاء إطار صورة مع مقياس نسبي
عن طريق تعديل مقياس الصورة النسبي، يمكنك إنشاء إطار صورة أكثر تعقيدًا.
- إنشاء مثيل من الفئة Presentation.
- الحصول على مرجع الشريحة عبر فهرسها.
- إضافة صورة إلى مجموعة صور العرض.
- إنشاء كائن PPImage بإضافة صورة إلى ImageCollection المرتبط بكائن العرض الذي سيُستخدم لملء الشكل.
- تحديد العرض والارتفاع النسبيين للصورة داخل إطار الصورة.
- كتابة العرض المعدل كملف PPTX.
هذا الكود PHP يوضح كيفية إنشاء إطار صورة مع مقياس نسبي:
# إنشاء فئة Presentation التي تمثل ملف PPTX
$pres = new Presentation();
try {
# احصل على الشريحة الأولى
$sld = $pres->getSlides()->get_Item(0);
# إنشاء فئة Image
$imgx = $pres->getImages()->addImage(new Java("java.io.FileInputStream", new Java("java.io.File", "asp1.jpg")));
# أضف إطار صورة بالارتفاع والعرض المتطابقين للصورة
$pf = $sld->getShapes()->addPictureFrame(ShapeType::Rectangle, 50, 150, $imgx->getWidth(), $imgx->getHeight(), $imgx);
# ضبط مقياس العرض والارتفاع النسبي
$pf->setRelativeScaleHeight(0.8);
$pf->setRelativeScaleWidth(1.35);
# اكتب ملف PPTX إلى القرص
$pres->save("RectPicFrame.pptx", SaveFormat::Pptx);
} catch (JavaException $e) {
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
استخراج الصور النقطية من إطارات الصورة
يمكنك استخراج الصور النقطية من كائنات PictureFrame وحفظها بصيغ PNG أو JPG وغيرها. يوضح مثال الكود أدناه كيفية استخراج صورة من المستند “sample.pptx” وحفظها بصيغة PNG.
$presentation = new Presentation("sample.pptx");
try {
$firstSlide = $presentation->getSlides()->get_Item(0);
$firstShape = $firstSlide->getShapes()->get_Item(0);
if (java_instanceof($firstShape, new JavaClass("com.aspose.slides.PictureFrame"))) {
$pictureFrame = $firstShape;
try {
$slideImage = $pictureFrame->getPictureFormat()->getPicture()->getImage()->getImage();
$slideImage->save("slide_1_shape_1.png", ImageFormat::Png);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
}
} catch (JavaException $e) {
} finally {
$presentation->dispose();
}
استخراج صور SVG من إطارات الصورة
عندما يحتوي عرض تقديمي على رسومات SVG موضوعة داخل أشكال PictureFrame، يتيح Aspose.Slides for PHP via Java استرجاع الصور المتجهة الأصلية بدقة كاملة. عن طريق استعراض مجموعة أشكال الشريحة، يمكنك