إدارة رسومات SmartArt في العروض التقديمية باستخدام Java
إنشاء شكل SmartArt
قدمت Aspose.Slides for Java واجهة برمجة تطبيقات لإنشاء أشكال SmartArt. لإنشاء شكل SmartArt في شريحة، يرجى اتباع الخطوات أدناه:
- إنشاء مثيل من الفئة Presentation .
- الحصول على مرجع شريحة باستخدام الفهرس الخاص بها.
- إضافة شكل SmartArt عبر Add a SmartArt shape عن طريق تعيينه LayoutType .
- حفظ العرض التقديمي المعدل كملف PPTX.
// إنشاء مثيل لفئة Presentation
Presentation pres = new Presentation();
try {
// الحصول على الشريحة الأولى
ISlide slide = pres.getSlides().get_Item(0);
// إضافة شكل Smart Art
ISmartArt smart = slide.getShapes().addSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
// حفظ العرض التقديمي
pres.save("SimpleSmartArt.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
![]() |
|---|
| الشكل: تم إضافة شكل SmartArt إلى الشريحة |
الوصول إلى شكل SmartArt على شريحة
سيتم استخدام الشيفرة التالية للوصول إلى أشكال SmartArt المضافة في شريحة العرض التقديمي. في الشيفرة النموذجية سنقوم بالتنقل عبر كل شكل داخل الشريحة والتحقق مما إذا كان شكلًا من نوع SmartArt . إذا كان الشكل من نوع SmartArt فسنقوم بتحويله إلى نسخة SmartArt .
// تحميل العرض التقديمي المطلوب
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
// التنقل عبر كل شكل داخل الشريحة الأولى
for (IShape shape : pres.getSlides().get_Item(0).getShapes())
{
// التحقق مما إذا كان الشكل من نوع SmartArt
if (shape instanceof ISmartArt)
{
// تحويل الشكل إلى SmartArtEx
ISmartArt smart = (ISmartArt)shape;
System.out.println("Shape Name:" + smart.getName());
}
}
} finally {
if (pres != null) pres.dispose();
}
الوصول إلى شكل SmartArt بنوع تخطيط معين
ستساعد الشيفرة النموذجية التالية في الوصول إلى شكل SmartArt بنوع LayoutType معين. يرجى ملاحظة أنه لا يمكن تغيير LayoutType الخاص بـ SmartArt لأنه للقراءة فقط ويتم تعيينه فقط عند إضافة شكل SmartArt .
- إنشاء مثيل من الفئة Presentation وتحميل العرض التقديمي الذي يحتوي على شكل SmartArt .
- الحصول على مرجع الشريحة الأولى باستخدام الفهرس الخاص بها.
- التنقل عبر كل شكل داخل الشريحة الأولى.
- التحقق مما إذا كان الشكل من نوع SmartArt وتحويل الشكل المحدد إلى SmartArt إذا كان كذلك.
- التحقق من شكل SmartArt بنوع LayoutType معين وإجراء ما يلزم بعد ذلك.
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
// التنقل عبر كل شكل داخل الشريحة الأولى
for (IShape shape : pres.getSlides().get_Item(0).getShapes())
{
// التحقق مما إذا كان الشكل من نوع SmartArt
if (shape instanceof ISmartArt)
{
// تحويل الشكل إلى SmartArtEx
ISmartArt smart = (ISmartArt) shape;
// التحقق من تخطيط SmartArt
if (smart.getLayout() == SmartArtLayoutType.BasicBlockList)
{
System.out.println("Do some thing here....");
}
}
}
} finally {
if (pres != null) pres.dispose();
}
تغيير نمط شكل SmartArt
في هذا المثال، سنتعلم كيفية تغيير النمط السريع لأي شكل SmartArt.
- إنشاء مثيل من الفئة Presentation وتحميل العرض التقديمي الذي يحتوي على شكل SmartArt .
- الحصول على مرجع الشريحة الأولى باستخدام الفهرس الخاص بها.
- التنقل عبر كل شكل داخل الشريحة الأولى.
- التحقق مما إذا كان الشكل من نوع SmartArt وتحويل الشكل المحدد إلى SmartArt إذا كان كذلك.
- العثور على شكل SmartArt بنمط معين.
- تعيين النمط الجديد لشكل SmartArt.
- حفظ العرض التقديمي.
// إنشاء مثيل لفئة Presentation
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
// الحصول على الشريحة الأولى
ISlide slide = pres.getSlides().get_Item(0);
// التنقل عبر كل شكل داخل الشريحة الأولى
for (IShape shape : slide.getShapes())
{
// التحقق مما إذا كان الشكل من نوع SmartArt
if (shape instanceof ISmartArt)
{
// تحويل الشكل إلى SmartArtEx
ISmartArt smart = (ISmartArt) shape;
// التحقق من نمط SmartArt
if (smart.getQuickStyle() == SmartArtQuickStyleType.SimpleFill) {
// تغيير نمط SmartArt
smart.setQuickStyle(SmartArtQuickStyleType.Cartoon);
}
}
}
// حفظ العرض التقديمي
pres.save("ChangeSmartArtStyle.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
![]() |
|---|
| الشكل: شكل SmartArt مع نمط متغير |
تغيير نمط لون شكل SmartArt
في هذا المثال، سنتعلم كيفية تغيير نمط اللون لأي شكل SmartArt. في الشيفرة النموذجية التالية سيتم الوصول إلى شكل SmartArt بنمط لون معين وتغيير نمطه.
- إنشاء مثيل من الفئة Presentation وتحميل العرض التقديمي الذي يحتوي على شكل SmartArt .
- الحصول على مرجع الشريحة الأولى باستخدام الفهرس الخاص بها.
- التنقل عبر كل شكل داخل الشريحة الأولى.
- التحقق مما إذا كان الشكل من نوع SmartArt وتحويل الشكل المحدد إلى SmartArt إذا كان كذلك.
- العثور على شكل SmartArt بنمط لون معين.
- تعيين نمط اللون الجديد لشكل SmartArt.
- حفظ العرض التقديمي.
// إنشاء مثيل لفئة Presentation
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
// الحصول على الشريحة الأولى
ISlide slide = pres.getSlides().get_Item(0);
// التنقل عبر كل شكل داخل الشريحة الأولى
for (IShape shape : slide.getShapes())
{
// التحقق مما إذا كان الشكل من نوع SmartArt
if (shape instanceof ISmartArt)
{
// تحويل الشكل إلى SmartArtEx
ISmartArt smart = (ISmartArt) shape;
// التحقق من نوع لون SmartArt
if (smart.getColorStyle() == SmartArtColorType.ColoredFillAccent1) {
// تغيير نوع لون SmartArt
smart.setColorStyle(SmartArtColorType.ColorfulAccentColors);
}
}
}
// حفظ العرض التقديمي
pres.save("ChangeSmartArtColorStyle.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
![]() |
|---|
| الشكل: شكل SmartArt بنمط لون متغير |
الأسئلة الشائعة
هل يمكنني تحريك SmartArt ككائن واحد؟
نعم. SmartArt هو شكل، لذلك يمكنك تطبيق standard animations عبر واجهة برمجة التطبيقات للرسوم المتحركة (الدخول، الخروج، التشديد، مسارات الحركة) كما هو الحال مع الأشكال الأخرى.
كيف يمكنني العثور على SmartArt محدد في شريحة إذا لم أعرف معرّفه الداخلي؟
قم بتعيين واستخدام النص البديل (AltText) وابحث عن الشكل باستخدام هذه القيمة—هذه طريقة موصى بها لتحديد موقع الشكل المستهدف.
هل يمكنني تجميع SmartArt مع أشكال أخرى؟
نعم. يمكنك تجميع SmartArt مع أشكال أخرى (صور، جداول، إلخ) ثم manipulate the group.
كيف أحصل على صورة لـ SmartArt معين (مثلاً للمعاينة أو التقرير)؟
قم بتصدير صورة مصغرة/صورة للشكل؛ يمكن للمكتبة render individual shapes إلى ملفات نقطية (PNG/JPG/TIFF).
هل سيتم الحفاظ على مظهر SmartArt عند تحويل العرض التقديمي كاملًا إلى PDF؟
نعم. يهدف محرك العرض إلى الحفاظ على الدقة العالية لتصدير PDF export، مع مجموعة من خيارات الجودة والتوافق.

