إدارة العلامات والبيانات المخصصة في العروض التقديمية على Android
تخزين البيانات في ملفات العرض
ملفات PPTX—العناصر ذات امتداد .pptx—تُخزن بصيغة PresentationML، التي هي جزء من مواصفات Office Open XML. تُحدد صيغة Office Open XML بنية البيانات الموجودة في العروض التقديمية.
مع اعتبار الشريحة كأحد عناصر العروض التقديمية، يحتوي جزء الشريحة على محتوى شريحة واحدة. يُسمح لجزء الشريحة بأن يكون له علاقات صريحة مع أجزاء متعددة—مثل العلامات المعرفة من قبل المستخدم—المحددة في ISO/IEC 29500.
يمكن أن توجد بيانات مخصصة (محددة لعروض تقديمية) أو مستخدم على شكل علامات (ITagCollection) وCustomXmlParts (ICustomXmlPartCollection).
الحصول على قيم العلامات
في الشرائح، تتطابق العلامة مع طريقتي IDocumentProperties.getKeywords() وIDocumentProperties.setKeywords() . يوضح هذا الشيفرة النموذجية كيفية الحصول على قيمة علامة باستخدام Aspose.Slides لـ Android عبر Java لPresentation:
Presentation pres = new Presentation("pres.pptx");
try{
String keywords = pres.getDocumentProperties().getKeywords();
} finally {
if (pres != null) pres.dispose();
}
إضافة علامات إلى العروض التقديمية
تتيح لك Aspose.Slides إضافة علامات إلى العروض التقديمية. تتكون العلامة عادةً من عنصرين:
- اسم الخاصية المخصصة -
MyTag - قيمة الخاصية المخصصة -
My Tag Value
إذا كنت بحاجة إلى تصنيف بعض العروض التقديمية بناءً على قاعدة أو خاصية معينة، فقد تستفيد من إضافة علامات إلى تلك العروض. على سبيل المثال، إذا أردت تجميع جميع العروض التقديمية من دول أمريكا الشمالية معًا، يمكنك إنشاء علامة أمريكا الشمالية ثم تعيين الدول ذات الصلة (الولايات المتحدة، المكسيك، وكندا) كقيم.
توضح هذه الشيفرة النموذجية كيفية إضافة علامة إلى Presentation باستخدام Aspose.Slides لـ Android عبر Java:
Presentation pres = new Presentation("pres.pptx");
try {
ITagCollection tags = pres.getCustomData().getTags();
pres.getCustomData().getTags().set_Item("MyTag", "My Tag Value");
} finally {
if (pres != null) pres.dispose();
}
يمكن أيضًا ضبط العلامات لـ Slide:
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
slide.getCustomData().getTags().set_Item("tag", "value");
} finally {
if (pres != null) pres.dispose();
}
أو لأي Shape فردي:
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IAutoShape shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 10, 10, 100, 50);
shape.getTextFrame().setText("My text");
shape.getCustomData().getTags().set_Item("tag", "value");
} finally {
if (pres != null) pres.dispose();
}
الأسئلة الشائعة
هل يمكنني إزالة جميع العلامات من عرض تقديمي أو شريحة أو شكل في عملية واحدة؟
نعم. يدعم tag collection عملية clear التي تحذف جميع أزواج المفتاح‑القيمة مرة واحدة.
كيف أحذف علامة واحدة باسمها دون التكرار عبر المجموعة بأكملها؟
استخدم عملية remove(name) على tag collection لحذف العلامة بمفتاحها.
كيف يمكنني استرجاع القائمة الكاملة لأسماء العلامات للتحليل أو التصفية؟
استخدم getNamesOfTags على tag collection; تُعيد مصفوفة بجميع أسماء العلامات.