إدارة شكل SmartArt

إنشاء شكل SmartArt

قامت Aspose.Slides لـ Node.js عبر Java بتوفير API لإنشاء أشكال SmartArt. لإنشاء شكل SmartArt في شريحة، يرجى اتباع الخطوات التالية:

  1. إنشاء كائن من الفئة Presentation.
  2. الحصول على مرجع الشريحة باستخدام فهرستها.
  3. إضافة شكل SmartArt عن طريق تعيينه باستخدام LayoutType.
  4. حفظ العرض المعدل كملف PPTX.
// إنشاء فئة Presentation
var pres = new aspose.slides.Presentation();
try {
    // الحصول على الشريحة الأولى
    var slide = pres.getSlides().get_Item(0);
    // إضافة شكل Smart Art
    var smart = slide.getShapes().addSmartArt(0, 0, 400, 400, aspose.slides.SmartArtLayoutType.BasicBlockList);
    // حفظ العرض
    pres.save("SimpleSmartArt.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    if (pres != null) {
        pres.dispose();
    }
}
todo:image_alt_text
شكل: SmartArt مضافة إلى الشريحة

الوصول إلى شكل SmartArt في الشريحة

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

// تحميل العرض المطلوب
var pres = new aspose.slides.Presentation("AccessSmartArtShape.pptx");
try {
    // استعراض كل شكل داخل الشريحة الأولى
    for (let i = 0; i < pres.getSlides().get_Item(0).getShapes().size(); i++) {
        let shape = pres.getSlides().get_Item(0).getShapes().get_Item(i);
        // التحقق مما إذا كان الشكل من نوع SmartArt
        if (java.instanceOf(shape, "com.aspose.slides.ISmartArt")) {
            // تحويل الشكل إلى SmartArtEx
            var smart = shape;
            console.log("Shape Name:" + smart.getName());
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

الوصول إلى شكل SmartArt بنوع Layout محدد

ستساعد الشيفرة النموذجية التالية في الوصول إلى شكل SmartArt بنوع Layout محدد. يرجى ملاحظة أنه لا يمكن تغيير LayoutType الخاص بـ SmartArt لأنه قراءة‑فقط ويتم تعيينه فقط عند إضافة الشكل.

  1. إنشاء كائن من الفئة Presentation وتحميل العرض الذي يحتوي على شكل SmartArt.
  2. الحصول على مرجع الشريحة الأولى باستخدام فهرستها.
  3. استعراض كل شكل داخل الشريحة الأولى.
  4. التحقق مما إذا كان الشكل من نوع SmartArt وتحويله إلى SmartArt إذا كان كذلك.
  5. فحص شكل SmartArt بنوع Layout المحدد وتنفيذ ما يلزم بعد ذلك.
var pres = new aspose.slides.Presentation("AccessSmartArtShape.pptx");
try {
    // استعراض كل شكل داخل الشريحة الأولى
    for (let i = 0; i < pres.getSlides().get_Item(0).getShapes().size(); i++) {
        let shape = pres.getSlides().get_Item(0).getShapes().get_Item(i);
        // التحقق مما إذا كان الشكل من نوع SmartArt
        if (java.instanceOf(shape, "com.aspose.slides.ISmartArt")) {
            // تحويل الشكل إلى SmartArtEx
            var smart = shape;
            // التحقق من تخطيط SmartArt
            if (smart.getLayout() == aspose.slides.SmartArtLayoutType.BasicBlockList) {
                console.log("Do some thing here....");
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

تغيير نمط شكل SmartArt

في هذا المثال، سنتعلم كيفية تغيير النمط السريع لأي شكل SmartArt.

  1. إنشاء كائن من الفئة Presentation وتحميل العرض الذي يحتوي على شكل SmartArt.
  2. الحصول على مرجع الشريحة الأولى باستخدام فهرستها.
  3. استعراض كل شكل داخل الشريحة الأولى.
  4. التحقق مما إذا كان الشكل من نوع SmartArt وتحويله إلى SmartArt إذا كان كذلك.
  5. العثور على شكل SmartArt بالنمط المحدد.
  6. تعيين النمط الجديد لشكل SmartArt.
  7. حفظ العرض.
// إنشاء فئة Presentation
var pres = new aspose.slides.Presentation("SimpleSmartArt.pptx");
try {
    // الحصول على الشريحة الأولى
    var slide = pres.getSlides().get_Item(0);
    // استعراض كل شكل داخل الشريحة الأولى
    for (let i = 0; i < slide.getShapes().size(); i++) {
        let shape = slide.getShapes().get_Item(i);
        // التحقق مما إذا كان الشكل من نوع SmartArt
        if (java.instanceOf(shape, "com.aspose.slides.ISmartArt")) {
            // تحويل الشكل إلى SmartArtEx
            var smart = shape;
            // التحقق من نمط SmartArt
            if (smart.getQuickStyle() == aspose.slides.SmartArtQuickStyleType.SimpleFill) {
                // تغيير نمط SmartArt
                smart.setQuickStyle(aspose.slides.SmartArtQuickStyleType.Cartoon);
            }
        }
    }
    // حفظ العرض
    pres.save("ChangeSmartArtStyle.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    pres.dispose();
}
todo:image_alt_text
شكل: SmartArt بنمط تم تغييره

تغيير نمط لون شكل SmartArt

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

  1. إنشاء كائن من الفئة Presentation وتحميل العرض الذي يحتوي على شكل SmartArt.
  2. الحصول على مرجع الشريحة الأولى باستخدام فهرستها.
  3. استعراض كل شكل داخل الشريحة الأولى.
  4. التحقق مما إذا كان الشكل من نوع SmartArt وتحويله إلى SmartArt إذا كان كذلك.
  5. العثور على شكل SmartArt بنمط اللون المحدد.
  6. تعيين نمط اللون الجديد لشكل SmartArt.
  7. حفظ العرض.
// إنشاء فئة Presentation
var pres = new aspose.slides.Presentation("SimpleSmartArt.pptx");
try {
    // الحصول على الشريحة الأولى
    var slide = pres.getSlides().get_Item(0);
    // استعراض كل شكل داخل الشريحة الأولى
    for (let i = 0; i < slide.getShapes().size(); i++) {
        let shape = slide.getShapes().get_Item(i);
        // التحقق مما إذا كان الشكل من نوع SmartArt
        if (java.instanceOf(shape, "com.aspose.slides.ISmartArt")) {
            // تحويل الشكل إلى SmartArtEx
            var smart = shape;
            // التحقق من نوع لون SmartArt
            if (smart.getColorStyle() == aspose.slides.SmartArtColorType.ColoredFillAccent1) {
                // تغيير نوع لون SmartArt
                smart.setColorStyle(aspose.slides.SmartArtColorType.ColorfulAccentColors);
            }
        }
    }
    // حفظ العرض
    pres.save("ChangeSmartArtColorStyle.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    pres.dispose();
}
todo:image_alt_text
شكل: SmartArt بنمط لون تم تغييره

FAQ

هل يمكنني تحريك SmartArt ككائن واحد؟

نعم. SmartArt هو شكل، لذا يمكنك تطبيق الرسوم المتحركة القياسية عبر API الرسوم المتحركة (دخول، خروج، تأكيد، مسارات الحركة) تمامًا مثل الأشكال الأخرى.

كيف يمكنني العثور على SmartArt محدد في شريحة إذا لم أعرف معرفه الداخلي؟

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

هل يمكنني تجميع SmartArt مع أشكال أخرى؟

نعم. يمكنك تجميع SmartArt مع أشكال أخرى (صور، جداول، إلخ) ثم التعامل مع المجموعة.

كيف أحصل على صورة لـ SmartArt معين (مثلاً للمعاينة أو التقرير)؟

صدّر صورة مصغرة/صورة للشكل؛ المكتبة يمكنها رسم الأشكال الفردية إلى ملفات raster (PNG/JPG/TIFF).

هل سيتم الحفاظ على مظهر SmartArt عند تحويل العرض الكامل إلى PDF؟

نعم. محرك العرض يستهدف دقة عالية لتصدير PDF، مع مجموعة من خيارات الجودة والتوافق.