سلايد ماستر

ما هو سلايد ماستر في باوربوينت

سلايد ماستر هو نموذج شريحة يحدد تخطيطها وأنماطها وثيمها وخطوطها وخلفيتها وخصائص أخرى للشرائح في العرض. إذا كنت ترغب في إنشاء عرض (أو سلسلة من العروض) بنفس النمط والقالب لشركتك، يمكنك استخدام سلايد ماستر.

يعتبر سلايد ماستر مفيدًا لأنه يتيح لك ضبط وتغيير مظهر جميع الشرائح في العرض مرة واحدة. يدعم Aspose.Slides آلية سلايد ماستر من باوربوينت.

تسمح لك VBA أيضًا بالتلاعب بسلايد ماستر وتنفيذ نفس العمليات المدعومة في باوربوينت: تغيير الخلفيات، إضافة الأشكال، تخصيص التخطيط، وما إلى ذلك. يوفر Aspose.Slides آليات مرنة تسمح لك باستخدام سلايد ماستر وأداء المهام الأساسية معها.

هذه هي العمليات الأساسية لسلايد ماستر:

  • إنشاء أو تعديل سلايد ماستر.
  • تطبيق سلايد ماستر على شرائح العرض.
  • تغيير خلفية سلايد ماستر.
  • إضافة صورة، عنصر نائب، فن ذكي، إلخ. إلى سلايد ماستر.

هذه هي العمليات الأكثر تقدمًا المتعلقة بسلايد ماستر:

  • مقارنة سلايد ماستر.
  • دمج سلايد ماستر.
  • تطبيق عدة سلايد ماستر.
  • نسخ الشريحة مع سلايد ماستر إلى عرض تقديمي آخر.
  • اكتشاف سلايد ماستر المكررة في العروض.
  • تعيين سلايد ماستر كعرض افتراضي للعرض.

كيف يتم تطبيق سلايد ماستر

قبل أن تعمل مع سلايد ماستر، قد ترغب في فهم كيفية استخدامها في العروض وتطبيقها على الشرائح.

  • يحتوي كل عرض افتراضيًا على سلايد ماستر واحد على الأقل.
  • يمكن أن يحتوي العرض على عدة سلايد ماستر. يمكنك إضافة عدة سلايد ماستر واستخدامها لتنسيق أجزاء مختلفة من العرض بطرق مختلفة.

في Aspose.Slides، يتم تمثيل سلايد ماستر بواسطة IMasterSlide نوع.

تحتوي كائن Presentation في Aspose.Slides على قائمة get_Masters() من نوع IMasterSlideCollection ، والتي تحتوي على قائمة بجميع الشرائح الرئيسية المحددة في العرض.

بالإضافة إلى عمليات CRUD، يحتوي واجهة IMasterSlideCollection على هذه الطرق المفيدة: AddClone() و InsertClone() . يتم وراثة تلك الطرق من وظيفة استنساخ الشريحة الأساسية. ولكن عند التعامل مع سلايد ماستر، تتيح لك تلك الطرق تنفيذ إعدادات معقدة.

عندما تتم إضافة شريحة جديدة إلى العرض، يتم تطبيق سلايد ماستر عليها تلقائيًا. يتم اختيار سلايد ماستر للشريحة السابقة بشكل افتراضي.

ملاحظة: يتم تخزين شرائح العرض في قائمة get_Slides() ، ويتم إضافة كل شريحة جديدة إلى نهاية المجموعة بشكل افتراضي. إذا كان العرض يحتوي على سلايد ماستر واحد فقط، فإن ذلك السلايد ماستر يتم اختياره لجميع الشرائح الجديدة. هذه هي السبب في أنك لا تحتاج إلى تعريف سلايد ماستر لكل شريحة جديدة تقوم بإنشائها.

المبدأ هو نفسه في باوربوينت وAspose.Slides. على سبيل المثال، في باوربوينت، عندما تضيف عرضًا جديدًا، يمكنك فقط الضغط على الخط السفلي تحت آخر شريحة ثم سيتم إنشاء شريحة جديدة (مع سلايد ماستر للعرض الأخير):

todo:image_alt_text

في Aspose.Slides، يمكنك أداء المهمة المكافئة باستخدام AddClone() الطريقة تحت فئة Presentation.

سلايد ماستر في تسلسل الشرائح

استخدام تخطيطات الشرائح مع سلايد ماستر يسمح بأقصى قدر من المرونة. يسمح لك تخطيط الشريحة بتعيين جميع الأنماط نفسها مثل سلايد ماستر (الخلفية، الخطوط، الأشكال، إلخ). ومع ذلك، عند الجمع بين عدة تخطيطات شرائح على سلايد ماستر، يتم إنشاء نمط جديد. عند تطبيق تخطيط شريحة على شريحة واحدة، يمكنك تغيير نمطها عن النمط المعتمد من قبل سلايد ماستر.

يتفوق سلايد ماستر على جميع العناصر المثبتة: سلايد ماستر -> تخطيط شريحة -> شريحة:

todo:image_alt_text

كل كائن IMasterSlide يحتوي على خاصية get_LayoutSlides() مع قائمة من تخطيطات الشرائح. تحتوي نوع Slide على خاصية get_LayoutSlide() مع ارتباط إلى تخطيط الشريحة المعتمد على الشريحة. يحدث التفاعل بين الشريحة وسلايد ماستر من خلال تخطيط الشريحة.

ماذا يحتوي سلايد ماستر

لفهم كيف يمكن تغيير سلايد ماستر، تحتاج إلى معرفة مكوناته. هذه هي الخصائص الأساسية لـ MasterSlide .

طرق سلايد ماستر:

  • GetDependingSlides - الحصول على جميع الشرائح المعتمدة على سلايد ماستر.
  • ApplyExternalThemeToDependingSlides - يتيح لك إنشاء سلايد ماستر جديدة بناءً على سلايد ماستر الحالية وثيم جديدة. سيتم تطبيق سلايد ماستر الجديدة على جميع الشرائح المعتمدة.

الحصول على سلايد ماستر

في باوربوينت، يمكن الوصول إلى سلايد ماستر من قائمة العرض -> سلايد ماستر:

todo:image_alt_text

باستخدام Aspose.Slides، يمكنك الوصول إلى سلايد ماستر بهذه الطريقة:

System::SharedPtr<IMasterSlide> master = pres->get_Masters()->idx_get(0);

تمثل واجهة IMasterSlide سلايد ماستر. تحتوي خاصية get_Masters() (المتعلقة بنوع IMasterSlideCollection) على قائمة بجميع سلايد ماستر التي تم تعريفها في العرض.

إضافة صورة إلى سلايد ماستر

عند إضافة صورة إلى سلايد ماستر، ستظهر تلك الصورة على جميع الشرائح المعتمدة على سلايد ماستر تلك.

على سبيل المثال، يمكنك وضع شعار شركتك وبعض الصور على سلايد ماستر ثم العودة إلى وضع تحرير الشرائح. يجب أن ترى الصورة على كل شريحة.

todo:image_alt_text

يمكنك إضافة صور إلى سلايد ماستر باستخدام Aspose.Slides:

System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>();

System::SharedPtr<IPPImage> image = pres->get_Images()->AddImage(System::IO::File::ReadAllBytes(u"image.png"));
pres->get_Master(0)->get_Shapes()->AddPictureFrame(ShapeType::Rectangle, 10.0f, 10.0f, 100.0f, 100.0f, image);

pres->Save(u"pres.pptx", SaveFormat::Pptx);

إضافة عنصر نائب إلى سلايد ماستر

هذه الحقول النصية هي عناصر نائب قياسية على سلايد ماستر:

  • انقر لتحرير نمط عنوان السلايد

  • تحرير أنماط نص السلايد

  • المستوى الثاني

  • المستوى الثالث

تظهر أيضًا على الشرائح بناءً على سلايد ماستر. يمكنك تحرير تلك العناصر النائبة على سلايد ماستر وسيتم تطبيق التغييرات تلقائيًا على الشرائح.

في باوربوينت، يمكنك إضافة عنصر نائب من خلال مسار سلايد ماستر -> إدراج عنصر نائب:

todo:image_alt_text

دعنا نفحص مثالًا أكثر تعقيدًا لعناصر نائب باستخدام Aspose.Slides. اعتبر شريحة تحتوي على عناصر نائب مُعدة من سلايد ماستر:

todo:image_alt_text

نريد تغيير تنسيق العنوان والعنوان الفرعي على سلايد ماستر بهذه الطريقة:

todo:image_alt_text

أولاً، نسترجع محتوى عنصر نائب العنوان من كائن سلايد ماستر ثم نستخدم حقل PlaceHolder.FillFormat:

System::SharedPtr<IAutoShape> FindPlaceholder(System::SharedPtr<IMasterSlide> master, PlaceholderType type)
{
    for (auto& shape : master->get_Shapes())
    {
        System::SharedPtr<IAutoShape> autoShape = System::AsCast<Aspose::Slides::IAutoShape>(shape);
        if (autoShape != nullptr)
        {
            if (autoShape->get_Placeholder()->get_Type() == type)
            {
                return autoShape;
            }
        }
    }
    return nullptr;
}

void Main()
{
    auto pres = System::MakeObject<Presentation>();
    System::SharedPtr<IMasterSlide> master = pres->get_Masters()->idx_get(0);
    System::SharedPtr<IAutoShape> placeHolder = FindPlaceholder(master, Aspose::Slides::PlaceholderType::Title);
    auto fillFormat = placeHolder->get_FillFormat();
    fillFormat->set_FillType(Aspose::Slides::FillType::Gradient);
    auto gradientFormat = fillFormat->get_GradientFormat();
    gradientFormat->set_GradientShape(Aspose::Slides::GradientShape::Linear);
    gradientFormat->get_GradientStops()->Add(0.0f, System::Drawing::Color::FromArgb(255, 0, 0));
    gradientFormat->get_GradientStops()->Add(255.0f, System::Drawing::Color::FromArgb(128, 0, 128));
    
    pres->Save(u"pres.pptx", Aspose::Slides::Export::SaveFormat::Pptx);
}

سيتغير نمط العنوان وتنسيقه لجميع الشرائح بناءً على سلايد ماستر:

todo:image_alt_text

تغيير الخلفية على سلايد ماستر

عند تغيير لون خلفية سلايد ماستر، ستحصل جميع الشرائح العادية في العرض على اللون الجديد. يُظهر هذا الرمز C++ العملية:

auto pres = System::MakeObject<Presentation>();

auto master = pres->get_Masters()->idx_get(0);
auto background = master->get_Background();
background->set_Type(Aspose::Slides::BackgroundType::OwnBackground);
background->get_FillFormat()->set_FillType(Aspose::Slides::FillType::Solid);
background->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Green());
    
pres->Save(u"pres.pptx", Aspose::Slides::Export::SaveFormat::Pptx);

استنساخ سلايد ماستر إلى عرض تقدمي آخر

لاستنساخ سلايد ماستر إلى عرض موديل آخر، اتصل بطريقة AddClone() من العرض المقصود مع تمرير سلايد ماستر إليها. يُظهر هذا الرمز C++ كيف يمكنك استنساخ سلايد ماستر إلى عرض تقديمي آخر:

auto presSource = System::MakeObject<Presentation>();
auto presTarget = System::MakeObject<Presentation>();
    
auto master = presTarget->get_Masters()->AddClone(presSource->get_Masters()->idx_get(0));

إضافة عدة سلايد ماستر إلى العرض

تسمح Aspose.Slides لك بإضافة عدة سلايد ماستر وتخطيطات شرائح إلى أي عرض محدد. يتيح لك ذلك إعداد الأنماط والتخطيطات وخيارات التنسيق لشرائح العرض بطرق عديدة.

في باوربوينت، يمكنك إضافة سلايد ماستر وتخطيط جديدة (من قائمة “سلايد ماستر”) بهذه الطريقة:

todo:image_alt_text

باستخدام Aspose.Slides، يمكنك إضافة سلايد ماستر جديدة عن طريق استدعاء طريقة AddClone():

pres->get_Masters()->AddClone(pres->get_Masters()->idx_get(0));

مقارنة سلايد ماستر

ت implement سلايد ماستر واجهة IBaseSlide التي تحتوي على طريقة Equals() ، والتي يمكن استخدامها لمقارنة الشرائح. وترجع true لسلايد ماستر المتماثلة في الهيكل والمحتوى الثابت.

تكون سلايد ماستر متساوية إذا كانت أشكالها وأنماطها ونصوصها وتأثيراتها والإعدادات الأخرى وما إلى ذلك متساوية. لا تأخذ المقارنة في الاعتبار قيم المعرف الفريد (على سبيل المثال: SlideId) والمحتوى الديناميكي (على سبيل المثال: القيمة الحالية في عنصر نائب التاريخ).

تعيين سلايد ماستر كعرض افتراضي للعرض

تسمح Aspose.Slides لك بتعيين سلايد ماستر كعرض افتراضي لعرض تقديمي. العرض الافتراضي هو ما تراه أولاً عند فتح العَرض.

يظهر هذا الرمز لك كيفية تعيين سلايد ماستر كعرض افتراضي لعَرض تقديمي في C++:

pres->get_ViewProperties()->set_LastView(Aspose::Slides::ViewType::SlideMasterView);

إزالة سلايد ماستر غير المستخدمة

توفر Aspose.Slides طريقة RemoveUnusedMasterSlides() (من فئة Compress) للسماح لك بحذف سلايد ماستر غير مرغوب فيه وغير مستخدم. يُظهر هذا الرمز C++ كيف يمكنك إزالة سلايد ماستر من عرض باوربوينت:

auto pres = System::MakeObject<Presentation>(u"pres.pptx");

LowCode::Compress::RemoveUnusedMasterSlides(pres);

pres->Save(u"pres-out.pptx", SaveFormat::Pptx);