إدارة العلامات والبيانات المخصصة

تخزين البيانات في ملفات العروض

تُخزَّن ملفات PPTX، وهي العناصر ذات الامتداد .pptx، في تنسيق PresentationML، وهو جزء من مواصفة Office Open XML. يحدد تنسيق Office Open XML الهيكلية للبيانات الموجودة في العروض.

مع كون الشريحة واحدة من العناصر في العروض، تحتوي جزء الشريحة على محتوى شريحة واحدة. يُسمح لجزء الشريحة بوجود علاقات صريحة مع العديد من الأجزاء – مثل العلامات المعرفة من قِبل المستخدم – المحددة بموجب ISO/IEC 29500.

يمكن أن توجد البيانات المخصصة (الخاصة بعرض تقديمي) أو المستخدم كعلامات (ITagCollection) وأجزاء CustomXml (ICustomXmlPartCollection).

الحصول على القيم للعلامات

في الشرائح، تتوافق علامة مع خاصية IDocumentProperties.Keywords. يعرض هذا الكود النموذجي كيفية الحصول على قيمة علامة باستخدام Aspose.Slides for .NET لـ Presentation:

using (Presentation pres = new Presentation("pres.pptx"))
{
   string keywords = pres.DocumentProperties.Keywords;
}

إضافة علامات إلى العروض

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

  • اسم الميزة المخصصة - MyTag
  • قيمة الميزة المخصصة - My Tag Value

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

يعرض هذا الكود النموذجي كيفية إضافة علامة إلى Presentation باستخدام Aspose.Slides for .NET:

using (Presentation pres = new Presentation("pres.pptx"))
{
   ITagCollection tags = pres.CustomData.Tags;
   pres.CustomData.Tags["MyTag"] = "My Tag Value";
}

يمكن أيضًا تعيين العلامات لــ Slide:

using(Presentation pres = new Presentation())
{
    ISlide slide = pres.Slides[0];
    slide.CustomData.Tags["tag"] = "value";
}

أو لأي Shape فردي:

using(Presentation pres = new Presentation())
{
    ISlide slide = pres.Slides[0];
    IAutoShape shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 10, 10, 100, 50);
    shape.TextFrame.Text = "My text";
    shape.CustomData.Tags["tag"] = "value";
}