اباتشي POI PPT - باور بوينت إلى جافا

غالبا ما يحدث أن يحتاج أحد التطبيقات إلى إنشاء تقارير بتنسيق Microsoft Office ppt أو pptx ، تماما كما يحتاج إلى تحرير ملفات Power Point وقراءتها. يجب على مبرمج Java الذي يريد إنتاج ملفات MS Office استخدام مكتبة Java ومن بينها مكتبة Apache المعروفة بكفاءتها.

Apache POI هي واجهة برمجة تطبيقات تسمح لك بإنشاء ملفات MS Office وتعديلها وعرضها. تم تطوير هذه المكتبة مفتوحة المصدر وتوزيعها بواسطة Apache Software Foundation.

هذا البرنامج التعليمي مخصص لأولئك الذين يحتاجون إلى قراءة ملفات Power Point وإنشائها وتحريرها باستخدام Java. يشرح الميزات الأساسية لمكتبة Apache POI وميزاتها الأساسية للقدرة على إجراء العمليات على ملفات PowerPoint.

قم بتنزيل وتثبيت Apache POI PPT< / h2>
قم بتنزيل أحدث إصدار من Apache POI من الموقع الرسمي (Download Apache POI PPT) وقم بفك ضغط المحتويات إلى مجلد المشروع الخاص بك بحيث يمكنك بعد ذلك ربط المكتبات المطلوبة بالتطبيق. سنحتاج إلى ملفات .jar التالية: < / div>
  • poi.jar
  • poi-oxml.jar
  • poi-oxml-schema.jar
  • log4j.jar
  • xmlbeans.jar

الفئات والأساليب

يحتوي Apache POI على فئات وطرق للعمل مع ملفات Excel و Word و Power Point. لقد أوضحنا بالفعل هذه الفئات للتفوق والكلمة في المقالات السابقة. سنعرض لك الفئات المتعلقة ب Power Point: < / div>
  • XMLSlideShow: لإنشاء عرض تقديمي وإدارته، لديك فئة XMLSlideShow هذه في org.apache.poi.xslf.usermoder.
  • XSLFSlide: إنشاء شريحة وإدارتها في عرض تقديمي.
  • XSLFSlideMaster: لعرض تقديمي يحتوي على تخطيطات شرائح مختلفة. تتيح فئة XSLFSlideMaster الوصول إلى هذه التخطيطات.
  • XSLFSlideLayout: يسمح لك بإدارة تخطيطات الشريحة.
  • XSLFTextParagraph: يمكنك كتابة نص في الشريحة باستخدام فئة XSLFTextParagraph.
  • XSLFTextRun: تعالج هذه الفئة تنسيق النص (الارتباطات التشعبية، الألوان والخطوط وما إلى ذلك).
  • XSLFTextShape: تعالج هذه الفئة الأشكال التي تحتوي على text.
  • XSLFHyperlink: يسمح لك بإنشاء ارتباطات تشعبية في عرض تقديمي.

إنشاء عرض تقديمي فارغ في PowerPoint

الآن ، دعنا نرى كيفية إنشاء عرض تقديمي باستخدام Java. لإنشاء عرض تقديمي فارغ ، تحتاج إلى إنشاء مثيل لفئة XMLSlideShow: < / div>

< pre class = "prettyprint lang-java" >XMLSlideShow ppt = XMLSlideShow الجديد ();
< / pre>< / div>
احفظ التغييرات على مستند PPT باستخدام FileOutputStream:

< pre class = "prettyprint lang-java" >ملف الملف = ملف جديد ("C://POIPPT//Examples//example1.pptx") ؛
FileOutputStream out = FileOutputStream جديد (ملف) ؛
ppt.write(out);
< / pre> الكود أدناه هو البرنامج الكامل لإنشاء مستند PowerPoint فارغ:

import java.io.File ؛ 
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;

فئة عامة PowerPoint {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

// إنشاء عرض شرائح فارغ جديد
XMLSlideShow ppt = XMLSlideShow جديد () ؛

// إنشاء كائن FileOutputStream لحفظ مستند PPT
= ملف جديد ("exemple.pptx") ؛
FileOutputStream fis = جديد FileOutputStream (ملف) ؛

//حفظ الملف
ppt.write(fis);
System.out.println ("تم إنشاء الملف بنجاح") ؛
fis.close ();
}
}
< / pre>يؤدي تجميع هذه التعليمة البرمجية وتنفيذها إلى إنشاء ملف exemple.pptx فارغ في دليل المشروع الخاص بنا يظهر على النحو التالي:

< / a>< / div>

تعديل أو تحرير ملف PowerPoint موجود

لفتح عرض تقديمي موجود، قم بإنشاء مثيل لفئة XMLSlideShow وقم بتمرير كائن FileInputStream للملف الذي تريد تعديله كوسيطة في منشئ XMLSlideShow.

File file=new File("C://POIPPT//Examples//example1.pptx"); 
FileInputstream inputstream = جديد FileInputStream (ملف) ؛
XMLSlideShow ppt = XMLSlideShow الجديد (inputstream) ؛
يمكنك إضافة شرائح إلى عرض تقديمي باستخدام طريقة createSlide() الخاصة ب < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >XMLSlideShow.

XSLFSlide slide1= ppt.createSlide(); 
< / pre>يفتح البرنامج التالي ويضيف شرائح إلى الملف الذي تم إنشاؤه بالفعل exemple.pptx:

import java.io.File; 
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;

Public Class EditPresentation {

الفراغ العام الثابت الرئيسي (سلسلة ar []) يلقي IOException {

// افتح ملف PowerPoint الموجود
= ملف جديد ("exemple.pptx") ؛
FileInputStream inputstream = جديد FileInputStream (ملف) ؛
XMLSlideShow ppt = XMLSlideShow الجديد (inputstream) ؛

//إضافة شرائح إلى العرض التقديمي
شريحة XSLFSlide1 = ppt.createSlide();
شريحة XSLFSlide2 = ppt.createSlide();
شريحة XSLFSlide3 = ppt.createSlide();

//save changes
FileOutputStream fis = جديد FileOutputStream (ملف) ؛
ppt.write (FIS) ؛

System.out.println ("التعديلات التي أدخلت بنجاح")؛
fis.close ();
}
}
يقوم البرنامج بإنشاء النتيجة التالية:

التعديلات التي تم إجراؤها بنجاح
تم تعديل المستند بثلاث شرائح جديدة:



import java.io.IOException; 
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;

العامة فئة SlideLayouts {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

XMLSlideShow ppt = XMLSlideShow الجديد ();
System.out.println ("التخطيطات المتاحة")؛

// احصل على قائمة بجميع الشرائح الرئيسية
ل (XSLFSlideMaster master: ppt.getSlideMasters ()){

//احصل على قائمة بجميع تخطيط الشرائح في كل شريحة رئيسية
ل (تخطيط XSLFSlideLayout: master.getSlideLayouts ()){

// يحصل على تخطيط الاسم
System.out.println (layout.getType ()) ؛
}
}
}
}
< / pre>< / div>
الإخراج:

< pre class = "prettyprint lang-java" > التخطيطات المتاحة
BLANK
TITLE_ONLY
SECTION_HEADER
PIC_TX
TITLE_AND_CONTENT
TITLE
VERT_TX< br / >VERT_TITLE_AND_TX
TWO_TX_TWO_OBJ
TWO_OBJ
OBJ_TX
< / pre>يوضح الشكل أدناه بعض التخطيطات المتوفرة في MS Office 2007:

< / a>< / div>
< / div>

إنشاء شريحة تستخدم تخطيط العنوان

دعنا ننشئ شريحة تستخدم التخطيط العنوان:

1- إنشاء عرض تقديمي فارغ عن طريق إنشاء مثيل للفصل  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >XMLSlideShow:

XMLSlideShow ppt=new XMLSlideShow(); 
< / pre>< / div>
2- احصل على قائمة الشرائح الرئيسية باستخدام الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >getSlideMasters () < / span >. ثم حدد الشريحة الرئيسية المطلوبة مع فهرسها: < / div>

< / div>
 XSLFSlideMaster slideMaster = ppt.getSlideMasters () .get (0); 
< / pre>< / div>
هنا نحصل على الشريحة الرئيسية الافتراضية الموجودة في الموضع 0 من الصفيف.< / div>

< / div>
3- اختر التخطيط باستخدام الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >getLayout()  من فئة XSLFSlideMaster. تقبل هذه الطريقة معلمة وهي متغير ثابت يمثل التخطيط المطلوب. هناك العديد من المتغيرات في هذه الفئة ، ويمثل كل منها تخطيط شريحة.

توضح التعليمة البرمجية التالية كيفية إنشاء تخطيط العنوان: < / div>

< pre class = "prettyprint lang-java" >XSLFSlideLayout titleLayout = slideMaster.getLayout (SlideLayout.TITLE) ؛
< / pre>< / div>
4- قم بإنشاء شريحة جديدة عن طريق تمرير كائن تخطيط الشريحة كمعلمة.

XSLFSlide slide = ppt.createSlide(titleLayout); 

5- حدد عنصرا نائبا باستخدام طريقة getPlaceholder() لفئة XSLFSlide. تقبل هذه الطريقة معلمة عدد صحيح. يؤدي تمرير القيمة 0 إلى إعطاء كائن XSLFTextSlide المستخدم للوصول إلى منطقة نص العنوان في الشريحة. قم بتغيير العنوان باستخدام setText () :

< pre class = "prettyprint lang-java" > XSLFTextShape title = slide.getPlaceholder (0) ؛
title.setText ("JavaCoder") ؛
< / pre>< / div>

< / div>
هنا البرنامج الكامل:

import java.io.File ؛ 
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xslf.usermodel.SlideLayout;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
import org.apache.poi.xslf.usermodel.XSLFTextShape;

Public Class TitleLayout {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

XMLSlideShow ppt = XMLSlideShow الجديد () ؛

//retrieve slidemaster
XSLFSlideMaster slideMaster = ppt.getSlideMasters().get(0);

// احصل على slidelayout الذي تريده < br / > XSLFSlideLayout titleLayout = slideMaster.getLayout (SlideLayout.TITLE) ؛

//إنشاء شريحة باستخدام شريحة slidelayout
XSLFSlide المحددة = ppt.createSlide(titleLayout);

//modify العنصر النائب 0 وهو العنوان
عنوان XSLFTextShape = slide.getPlaceholder (0) ؛

//edit title
title.setText ("JavaCoder") ؛

//إنشاء ملف pptx
= ملف جديد ("Exemple.pptx") ؛
FileOutputStream fos = جديد FileOutputStream (ملف) ؛

// حفظ التغييرات
ppt.write (fos) ؛
System.out.println ("تم إنشاء الشريحة بنجاح") ؛
fos.close ();
}
}
< / pre> الإخراج:

 تم إنشاء الشريحة بنجاح
< / pre>

3- احصل على التخطيط المطلوب باستخدام الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >getLayout()  من الفصل  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >XSLFSlideMaster< / span>: < / div>
4- قم بإنشاء شريحة جديدة عن طريق تمرير كائن التخطيط كمعاملة: < / div>

< / div>
 XSLFSlide slide = ppt.createSlide (SlideLayout.TITLE_AND_CONTENT) ؛ 
< / pre>< / div>
5- حدد عنصرا نائبا باستخدام getPlaceholder () :

< pre class = "prettyprint lang-java" > XSLFTextShape title = slide.getPlaceholder (1) ؛
title1.setText ("مقدمة")؛
< / pre>< / div>
6 - امسح نص الشريحة عن طريق استدعاء طريقة clearText () لفئة XSLFTextShape.

< pre class = "prettyprint lang-java" >body.clearText () ؛
< / pre>7- أضف فقرة جديدة باستخدام طريقة addNewTextParagraph (). يمكنك الآن إضافة نص باستخدام طريقة addNewTextRun () ، ثم setText () .

< pre class = "prettyprint lang-java" >body.addNewTextParagraph () .addNewTextRun () .setText ("هذا هو نص الشريحة الأول الخاص بي") ؛
< / pre> هنا هو الرمز الكامل:

< pre class = "prettyprint lang-java" >import java.io.File ؛
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.SlideLayout;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
import org.apache.poi.xslf.usermodel.XSLFTextShape;

Public Class TitleAndBodyLayout {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

XMLSlideShow ppt = XMLSlideShow الجديد () ؛

//retrieve slidemaster
XSLFSlideMaster slideMaster = ppt.getSlideMasters ().get (0) ؛

// احصل على slidelayout الذي تريده < br / > XSLFSlideLayout titleLayout = slideMaster.getLayout (SlideLayout.TITLE) ؛

//إنشاء شريحة باستخدام شريحة slidelayout
XSLFSlide المحددة = ppt.createSlide(titleLayout);

//modify العنصر النائب 0 وهو العنوان
عنوان XSLFTextShape = slide.getPlaceholder (0) ؛

//edit title
title.setText ("مقدمة");

// حدد العنصر النائب 1 وهو النص
جسم XSLFTextShape = slide.getPlaceholder (1) ؛

//delete old content
body.clearText ();

//add paragraph
body.addNewTextParagraph().addNewTextRun().setText("شريحتي الأولى");

//إنشاء ملف pptx
= ملف جديد ("Exemple.pptx") ؛
FileOutputStream fos = جديد FileOutputStream (ملف) ؛

// حفظ التغييرات
ppt.write (fos) ؛
System.out.println ("تم إنشاء الشريحة بنجاح") ؛
fos.close ();
}
}
< / pre> الإخراج:

 تم إنشاء الشريحة بنجاح
< / pre>
< / a>< / div>
< / div >< div style = "محاذاة النص: يسار ؛" >
< / div>< / div>

الحصول على حجم الشريحة وتغييره

يتم الحصول على حجم الشريحة باستخدام طريقة getPageSize() الخاصة ب XMLSlideShow.

java.awt.Dimension pgsize = ppt.getPageSize(); 
لتغيير حجم الشريحة في جافا، استخدم طريقة setPageSize() الخاصة ب XMLSlideShow.

ppt.setPageSize(new java.awt.Dimension(1024, 768)); 
< / pre>< / div>
هنا البرنامج الكامل:

import java.awt.Dimension ؛ 
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;

الطبقة العامة ChangingSlide {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

ملف ملف = ملف جديد ("Exemple.pptx") ؛
XMLSlideShow ppt = XMLSlideShow الجديد ();

// احصل على البعد الحالي
البعد pptsize = ppt.getPageSize () ؛

System.out.println ("بعد الشريحة الحالي:");
System.out.println ("العرض:" + pptsize.width) ؛
System.out.println ("الارتفاع:" + pptsize.height) ؛

// تغيير البعد
ppt.setPageSize (java.awt.Dimension الجديد (1024,400)) ؛

FileOutputStream out = FileOutputStream الجديد (ملف) ؛
ppt.write (out) ؛
System.out.println ("تم تغيير بعد الشريحة") ؛
out.close ();
}
}
< / pre> الإخراج:

< pre class = "prettyprint lang-java" > حجم الشريحة الحالي:
width: 720
الارتفاع: 540
تم تغيير بعد الشريحة
< / pre>تظهر الشريحة هكذا بعد تغيير الحجم:

يعرض الكود التالي مثالا:

import java.io.File; 
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;

فئة عامة ReorderSlide {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

ملف الملف = ملف جديد ("exemple.pptx") ؛
XMLSlideShow ppt = XMLSlideShow الجديد (ملف جديد FileInputStream (ملف)) ؛

//retrieve slide list
java.util.List الشرائح = ppt.getSlides ();

// حدد الشريحة 3
XSLFSlide selectesdslide = slides.get (2) ؛

// ضعه في الموضع الأول
ppt.setSlideOrder (selectesdslide، 0);

FileOutputStream fos = جديد FileOutputStream (ملف) ؛
ppt.write (fos);
fos.close ();
}
}
< / xslfslide>< / pre> العرض قبل وبعد التبديل بين الشريحة 1 و 3:

< td class = "tr-caption" style = "حجم الخط: 12.8 بكسل ؛" >الأمامية< / td>< / tr>< / tbody>< / table>
< / a>< / td>< / tr>
< td class = "tr-caption" style = "حجم الخط: 12.8 بكسل ؛" >بعد< / td>< / tr>< / tbody>< / table>

حذف الشرائح

يمكنك حذف الشرائح عن طريق استدعاء طريقة removeSlide(). تقبل هذه الطريقة عددا صحيحا يمثل موضع الشريحة المراد حذفها.

 
File file=new File("fichier1.pptx");
XMLSlideShow ppt = XMLSlideShow الجديد (ملف جديد InputStream (ملف)) ؛

//delete الشريحة في الموضع 0
ppt.removeSlide(0);
.
.
.
< / pre> إذا طبقنا عملية الحذف هذه على المثال أعلاه ، والذي يحتوي على ثلاث شرائح (1 و 2 و 3) ، فسنحصل على هذا الإخراج:

< / a>< / div>

إضافة صورة

يمكنك إضافة صور إلى عرض تقديمي باستخدام الأسلوب createPicture() من فئة XSLFSlide. تقبل طريقة createPicture() صورة بتنسيق صفيف من البايتات أو البايت.

يجب عليك قراءة ملف الصورة التي ستتم إضافتها وتحويلها إلى صفيف من البايتات باستخدام الطريقة IOUtils.toByteArray().

//read image
File image=new File("C://logo.jpg");

/ / تحويل الصورة إلى مصفوفة بايت < br / > بايت [] bimage = IOUtils.toByteArray(جديد FileInputStream (صورة)) ؛
< / pre> نحتاج الآن إلى إضافة الصورة التي تم إنشاؤها إلى العرض التقديمي باستخدام طريقة addPicture(). تقبل هذه الطريقة متغير البايت الذي تم الحصول عليه من تحويل image.

PictureData picdata = ppt.addPicture(صورة، PictureData.PictureType.PNG); < / pre>أخيرا ، قم بدمج الصورة في الشريحة باستخدام createPicture ():

XSLFPictureShape pic = slide.createPicture (picdata) ؛ < / pre> ينفذ البرنامج التالي هذه الخطوات لإضافة صورة: 

import java.io.File; 
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.sl.usermodel.PictureData;
import org.apache.poi.util.IOUtils;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFPictureData;
import org.apache.poi.xslf.usermodel.XSLFPictureShape;
import org.apache.poi.xslf.usermodel.XSLFSlide;

من الفئة العامة AddImage {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

XMLSlideShow ppt = XMLSlideShow الجديد ();
شريحة XSLFSlide = ppt.createSlide();

//قراءة صورة
صورة الملف = ملف جديد ("logo.png") ؛

// تحويل الصورة إلى بايت < br / > بايت [] صورة = IOUtils.toByteArray(جديد FileInputStream (صورة)) ؛

// إضافة صورة إلى العرض التقديمي
PictureData picdata = ppt.addPicture (صورة ، PictureData.PictureType.PNG) ؛

// إنشاء شريحة لهذه الصورة المضافة
XSLFPictureShape الموافقة المسبقة عن علم = slide.createPicture (picdata) ؛

ملف الملف = ملف جديد ("diapoimage.pptx") ؛
FileOutputStream fos = جديد FileOutputStream (ملف) ؛

ppt.write (fos) ؛
System.out.println ("تمت إضافة الصورة!");
fos.close ();
}
}
يظهر الملف بهذه الطريقة بعد إنشائه:

تنسيق النص

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

< / div>
 / / إنشاء شريحة بعنوان ومحتوى
XSLFSlide slide = ppt.createSlide(slidelayout);

/ / حدد العنصر النائب 1
XSLFTextShape body = slide.getPlaceholder (1) ؛

//إضافة فقرة
XSLFTextParagraph paragraph=body.addNewTextParagraph ();

//إنشاء كائن TextRun
XSLFTextRun run = paragraph.addNewTextRun ();
< / pre>< / div>
يمكنك تغيير حجم خط النص في العرض التقديمي باستخدام setFontSize ():

run.setFontColor (java.awt.Color.blue) ؛ 
run.setFontSize(26);
يوضح الجزء التالي من التعليمات البرمجية كيفية تطبيق الأنماط المختلفة: غامق ، مائل ، تسطير على نص في Power Point.

//تغيير النص إلى Bold
run.setBold(true);

//تغيير النص إلى مائل
run.setItalic(true)

//يرسم خطا في منتصف النص
run.setStopthrough(true);

//نص التسطير
run.setUnderline(true);
< / pre>للحصول على مسافة بين الفقرات ، أضف addLineBreak () من XSLFTextParagraph:

< pre class = "prettyprint lang-java">paragraph.addLineBreak ();
< / pre> يجمع البرنامج التالي جميع الطرق المذكورة:

import java.io.File ؛ 
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xslf.usermodel.SlideLayout;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
import org.apache.poi.xslf.usermodel.XSLFTextParagraph;
import org.apache.poi.xslf.usermodel.XSLFTextRun;
import org.apache.poi.xslf.usermodel.XSLFTextShape;

تنسيق النص العام {

الفراغ العام الثابت الرئيسي (سلسلة args []) يلقي IOException {

// إنشاء عرض تقديمي فارغ
XMLSlideShow ppt = XMLSlideShow الجديد () ؛

//retrieve slidemaster
XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];

//حدد التخطيط من القائمة المتوفرة
XSLFSlideLayout slidelayout = slideMaster.getLayout(SlideLayout.TITLE_AND_CONTENT);

//إنشاء شريحة بعنوان ومحتوى
شريحة XSLFSlide = ppt.createSlide(slidelayout);

//select title
XSLFTextShape body = slide.getPlaceholder (1) ؛

//إزالة النص الموجود في الشريحة
body.clearText();

//add new paragraph
XSLFTextParagraph paragraph=body.addNewTextParagraph ();

// سطر 1

XSLFTextRun run1 = paragraph.addNewTextRun ();
run1.setText ("خط ملون") ؛

// تغيير لون النص
run1.setFontColor (java.awt.Color.red) ؛

// تغيير حجم الخط
run1.setFontSize (24) ؛

// انتقل إلى السطر التالي
paragraph.addLineBreak ();

// السطر 2

XSLFTextRun run2 = paragraph.addNewTextRun ();
run2.setText ("خط غامق") ؛
run2.setFontColor (java.awt.Color.CYAN) ؛

// تقديم النص بالخط الغامق
run2.setBold (صحيح) ؛
الفقرة.addLineBreak();

// سطر 3

XSLFTextRun run3 = paragraph.addNewTextRun ();
run3.setText ("خط يتوسطه خط");
run3.setFontSize (12) ؛

// تقديم النص مائل < br / > run3.setItalic(true);

// يتوسطه خط
run3.setStrikethrough (صحيح) ؛
الفقرة.addLineBreak();

// سطر 4

XSLFTextRun run4 = paragraph.addNewTextRun ();
run4.setText ("خط تحته خط")؛
run4.setUnderline (صحيح) ؛

//تسطير النص
paragraph.addLineBreak();

//إنشاء كائن ملف
ملف ملف = ملف جديد ("TextFormat.pptx") ؛
FileOutputStream out = FileOutputStream الجديد (ملف) ؛

// حفظ التغييرات
ppt.write (out) ؛
out.close ();
}
}
< / pre> التنفيذ:

< / a>< / td>< / tr>