إدارة خلفيات العرض التقديمي في PHP
نظرة عامة
تُستخدم الألوان الصلبة، التدرجات، والصور عادةً كخلفيات للشرائح. يمكنك تعيين الخلفية لشريحة عادية (شريحة واحدة) أو لشريحة رئيسية (تنطبق على عدة شرائح في آنٍ واحد).

تعيين خلفية بلون صلب لشريحة عادية
يسمح Aspose.Slides لك بتعيين لون صلب كخلفية لشريحة محددة في عرض تقديمي — حتى إذا كان العرض يستخدم شريحة رئيسية. التغيير يطبق فقط على الشريحة المختارة.
- أنشئ مثيلاً من فئة Presentation.
- عيّن خاصية الشريحة BackgroundType إلى
OwnBackground. - عيّن خلفية الشريحة FillType إلى
Solid. - استخدم الطريقة getSolidFillColor على فئة FillFormat لتحديد لون الخلفية الصلب.
- احفظ العرض التقديمي المعدّل.
يعرض مثال PHP التالي كيفية تعيين لون أزرق صلب كخلفية لشريحة عادية:
// إنشاء مثيل من فئة Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// تعيين لون خلفية الشريحة إلى الأزرق.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Solid);
$slide->getBackground()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->BLUE);
// حفظ العرض التقديمي إلى القرص.
$presentation->save("SolidColorBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
تعيين خلفية بلون صلب لشريحة رئيسية
يسمح Aspose.Slides لك بتعيين لون صلب كخلفية لشريحة رئيسية في عرض تقديمي. الشريحة الرئيسية تعمل كقالب يتحكم في تنسيق جميع الشرائح، لذا عند اختيار لون صلب لخلفية الشريحة الرئيسية يطبق على كل شريحة.
- أنشئ مثيلاً من فئة Presentation.
- عيّن خاصية الشريحة الرئيسية BackgroundType (من خلال
getMasters) إلىOwnBackground. - عيّن خلفية الشريحة الرئيسية FillType إلى
Solid. - استخدم الطريقة getSolidFillColor لتحديد لون الخلفية الصلب.
- احفظ العرض التقديمي المعدّل.
يعرض مثال PHP التالي كيفية تعيين لون أخضر صلب كخلفية لشريحة رئيسية:
// إنشاء مثيل من فئة Presentation.
$presentation = new Presentation();
try {
$masterSlide = $presentation->getMasters()->get_Item(0);
// تعيين لون خلفية الشريحة الرئيسية إلى الأخضر الغابي.
$masterSlide->getBackground()->setType(BackgroundType::OwnBackground);
$masterSlide->getBackground()->getFillFormat()->setFillType(FillType::Solid);
$masterSlide->getBackground()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->GREEN);
// حفظ العرض التقديمي إلى القرص.
$presentation->save("MasterSlideBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
تعيين خلفية متدرجة لشريحة
التدرج هو تأثير رسومي يُنشأ بتغير تدريجي في اللون. عند استخدامه كخلفية لشريحة، يمكن أن يجعل العروض التقديمية أكثر إبداعًا واحترافية. يسمح Aspose.Slides لك بتعيين لون متدرج كخلفية للشرائح.
- أنشئ مثيلاً من فئة Presentation.
- عيّن خاصية الشريحة BackgroundType إلى
OwnBackground. - عيّن خلفية الشريحة FillType إلى
Gradient. - استخدم الطريقة getGradientFormat على فئة FillFormat لتكوين إعدادات التدرج المفضلة لديك.
- احفظ العرض التقديمي المعدّل.
يعرض مثال PHP التالي كيفية تعيين لون متدرج كخلفية لشريحة:
// إنشاء مثيل من فئة Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// تطبيق تأثير تدرج على الخلفية.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Gradient);
$slide->getBackground()->getFillFormat()->getGradientFormat()->setTileFlip(TileFlip::FlipBoth);
// حفظ العرض التقديمي إلى القرص.
$presentation->save("GradientBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
تعيين صورة كخلفية لشريحة
بالإضافة إلى التعبئة الصلبة والمتدرجة، يتيح لك Aspose.Slides استخدام الصور كخلفيات للشرائح.
- أنشئ مثيلاً من فئة Presentation.
- عيّن خاصية الشريحة BackgroundType إلى
OwnBackground. - عيّن خلفية الشريحة FillType إلى
Picture. - حمّل الصورة التي تريد استخدامها كخلفية للشريحة.
- أضف الصورة إلى مجموعة صور العرض التقديمي.
- استخدم الطريقة getPictureFillFormat على فئة FillFormat لتعيين الصورة كخلفية.
- احفظ العرض التقديمي المعدّل.
يعرض مثال PHP التالي كيفية تعيين صورة كخلفية لشريحة:
// إنشاء مثيل من فئة Presentation.
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
// تعيين خصائص صورة الخلفية.
$slide->getBackground()->setType(BackgroundType::OwnBackground);
$slide->getBackground()->getFillFormat()->setFillType(FillType::Picture);
$slide->getBackground()->getFillFormat()->getPictureFillFormat()->setPictureFillMode(PictureFillMode::Stretch);
// تحميل الصورة.
$image = Images::fromFile("Tulips.jpg");
// إضافة الصورة إلى مجموعة صور العرض التقديمي.
$ppImage = $presentation->getImages()->addImage($image);
$image->dispose();
$slide->getBackground()->getFillFormat()->getPictureFillFormat()->getPicture()->setImage($ppImage);
// حفظ العرض التقديمي إلى القرص.
$presentation->save("ImageAsBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
يعرض مثال الشيفرة التالي كيفية تعيين نوع تعبئة الخلفية إلى صورة مكررة وتعديل خصائص التكرار:
$presentation = new Presentation();
try {
$firstSlide = $presentation->getSlides()->get_Item(0);
$background = $firstSlide->getBackground();
$background->setType(BackgroundType::OwnBackground);
$background->getFillFormat()->setFillType(FillType::Picture);
$newImage = Images::fromFile("image.png");
$ppImage = $presentation->getImages()->addImage($newImage);
$newImage->dispose();
// تعيين الصورة المستخدمة لملء الخلفية.
$backPictureFillFormat = $background->getFillFormat()->getPictureFillFormat();
$backPictureFillFormat->getPicture()->setImage($ppImage);
// تعيين وضع تعبئة الصورة إلى تكرار وضبط خصائص التكرار.
$backPictureFillFormat->setPictureFillMode(PictureFillMode::Tile);
$backPictureFillFormat->setTileOffsetX(15);
$backPictureFillFormat->setTileOffsetY(15);
$backPictureFillFormat->setTileScaleX(46);
$backPictureFillFormat->setTileScaleY(87);
$backPictureFillFormat->setTileAlignment(RectangleAlignment::Center);
$backPictureFillFormat->setTileFlip(TileFlip::FlipY);
$presentation->save("TileBackground.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
تغيير شفافية صورة الخلفية
قد ترغب في ضبط شفافية صورة خلفية الشريحة لجعل محتويات الشريحة بارزة أكثر. يوضح كود PHP التالي كيفية تغيير شفافية صورة خلفية الشريحة:
$transparencyValue = 30; // على سبيل المثال.
// الحصول على مجموعة عمليات تحويل الصورة.
$imageTransform = $slide->getBackground()->getFillFormat()->getPictureFillFormat()->getPicture()->getImageTransform();
// العثور على تأثير شفافية ثابت بنسبة مئوية.
$transparencyOperation = null;
foreach($imageTransform as $operation) {
if (java_instanceof($operation, new JavaClass("com.aspose.slides.AlphaModulateFixed"))) {
$transparencyOperation = $operation;
break;
}
}
// تعيين قيمة الشفافية الجديدة.
if (java_is_null($transparencyOperation)) {
$imageTransform->addAlphaModulateFixedEffect(100 - $transparencyValue);
} else {
$transparencyOperation->setAmount(100 - $transparencyValue);
}
الحصول على قيمة خلفية الشريحة
يوفر Aspose.Slides الفئة BackgroundEffectiveData لاسترداد القيم الفعلية لخلفية الشريحة. تُظهر هذه الفئة الـ FillFormat وEffectFormat الفعليين.
باستخدام طريقة getBackground من فئة BaseSlide، يمكنك الحصول على الخلفية الفعلية لشريحة.
يعرض مثال PHP التالي كيفية الحصول على قيمة الخلفية الفعلية لشريحة:
// إنشاء مثيل من فئة Presentation.
$presentation = new Presentation("Sample.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// استرجاع الخلفية الفعلية مع مراعاة الشريحة الرئيسية والتخطيط والسمة.
$effBackground = $slide->getBackground()->getEffective();
if ($effBackground->getFillFormat()->getFillType() == FillType::Solid)
echo "Fill color: " . $effBackground->getFillFormat()->getSolidFillColor() . "\n";
else
echo "Fill type: " . $effBackground->getFillFormat()->getFillType() . "\n";
} finally {
$presentation->dispose();
}
الأسئلة المتكررة
هل يمكنني إعادة ضبط خلفية مخصصة واستعادة خلفية السمة/التخطيط؟
نعم. احذف التعبئة المخصصة للشريحة، وستُستعاد الخلفية مرة أخرى من شريحة layout/master المقابلة (أي خلفية theme).
ماذا يحدث للخلفية إذا غيرت سمة العرض التقديمي لاحقًا؟
إذا كان للشفرة تعبئة خاصة بها، ستظلunchanged. إذا كانت الخلفية مُستمدة من layout/master، فستُحدَّث لتطابق السمة الجديدة.