مدیریت فهرستهای گلولهای و شمارهدار در ارائهها در Java
بررسی کلی
Aspose.Slides for Java به شما امکان میدهد فهرستهای گلولهای و شمارهدار را در ارائههای PowerPoint و OpenDocument ایجاد و قالببندی کنید. یک مورد فهرست، پاراگرافی است که تنظیمات گلوله آن از طریق قالببندی پاراگراف کنترل میشود.
از متدIParagraph.getParagraphFormat برای دسترسی به تنظیمات فهرست در سطح پاراگراف استفاده کنید. نقطه ورود اصلی IParagraphFormat.getBullet است که یک شیءIBulletFormat را برمیگرداند. با این شیء میتوانید نوع گلوله، نماد، تصویر، رنگ، اندازه، سبک شمارهگذاری و شماره آغاز را تنظیم کنید.
این مقاله نشان میدهد چگونه:
- یک فهرست گلولهای با نماد سفارشی ایجاد کنید
- یک گلوله تصویری ایجاد کنید
- یک فهرست چندسطحی با تنظیم عمق پاراگراف ایجاد کنید
- یک فهرست شمارهدار ایجاد کنید
- قالببندی فهرست را در یک ارائه موجود بررسی و تغییر دهید
ایجاد فهرست گلولهای
برای ایجاد فهرست گلولهای، اشیاءIParagraph را به یکITextFrame اضافه کنید وIBulletFormat.setType را رویBulletType.Symbol تنظیم کنید. سپس میتوانیدIBulletFormat.setChar،IBulletFormat.getColor وIBulletFormat.setHeight را برای کنترل ظاهر گلوله تنظیم کنید.
کد Java زیر نحوه ایجاد فهرست گلولهای را در یک اسلاید نشان میدهد:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 20, 200, 50);
ITextFrame textFrame = autoShape.getTextFrame();
textFrame.getParagraphs().clear();
Color bulletColor = new Color(205, 92, 92);
Paragraph paragraph1 = new Paragraph();
paragraph1.getParagraphFormat().getBullet().setType(BulletType.Symbol);
paragraph1.getParagraphFormat().getBullet().setChar('*');
paragraph1.getParagraphFormat().setIndent(15);
paragraph1.getParagraphFormat().getBullet().setBulletHardColor(NullableBool.True);
paragraph1.getParagraphFormat().getBullet().getColor().setColor(bulletColor);
paragraph1.getParagraphFormat().getBullet().setHeight(100);
paragraph1.setText("The first paragraph");
textFrame.getParagraphs().add(paragraph1);
Paragraph paragraph2 = new Paragraph();
paragraph2.getParagraphFormat().getBullet().setType(BulletType.Symbol);
paragraph2.getParagraphFormat().getBullet().setChar('*');
paragraph2.getParagraphFormat().setIndent(15);
paragraph2.getParagraphFormat().getBullet().setBulletHardColor(NullableBool.True);
paragraph2.getParagraphFormat().getBullet().getColor().setColor(bulletColor);
paragraph2.getParagraphFormat().getBullet().setHeight(100);
paragraph2.setText("The second paragraph");
textFrame.getParagraphs().add(paragraph2);
presentation.save("symbol_bullets.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
نتیجه:

ایجاد فهرست شمارهدار
زمانی که ترتیب موارد مهم است از فهرستهای شمارهدار استفاده کنید. IBulletFormat.setType را رویBulletType.Numbered تنظیم کنید. همچنین میتوانید یک قالب شمارهگذاری را باIBulletFormat.setNumberedBulletStyle انتخاب کنید یا هنگام نیاز به شروع از مقدار دیگری غیر از 1،IBulletFormat.setNumberedBulletStartWith را تنظیم کنید.
کد Java زیر نحوه ایجاد فهرست شمارهدار را در یک اسلاید نشان میدهد:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 20, 90, 80);
ITextFrame textFrame = autoShape.getTextFrame();
textFrame.getParagraphs().clear();
Paragraph paragraph1 = new Paragraph();
paragraph1.getParagraphFormat().getBullet().setType(BulletType.Numbered);
paragraph1.setText("Apple");
textFrame.getParagraphs().add(paragraph1);
Paragraph paragraph2 = new Paragraph();
paragraph2.getParagraphFormat().getBullet().setType(BulletType.Numbered);
paragraph2.setText("Orange");
textFrame.getParagraphs().add(paragraph2);
Paragraph paragraph3 = new Paragraph();
paragraph3.getParagraphFormat().getBullet().setType(BulletType.Numbered);
paragraph3.setText("Banana");
textFrame.getParagraphs().add(paragraph3);
presentation.save("numbered_bullets.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
نتیجه:

ایجاد گلوله تصویری
Aspose.Slides به شما امکان میدهد نماد گلوله عادی را با یک تصویر جایگزین کنید. گلولههای تصویری بهترین عملکرد را با تصاویر سادهای که در اندازه کوچک نیز قابل خواندن باشند، مانند آیکونها یا فایلهای PNG شفاف کوچک، دارند.
در صورتی که قصد دارید نماد گلوله عادی را با تصویر جایگزین کنید، بهتر است گرافیک سادهای با پسزمینه شفاف انتخاب کنید. این گونه تصاویر به عنوان نمادهای سفارشی گلوله به خوبی عمل میکنند.
به یاد داشته باشید که تصویر به اندازه بسیار کوچکتری مقیاس میشود. به همین دلیل، به شدت توصیه میشود تصویری انتخاب کنید که حتی در این مقیاس نیز واضح و بصری مؤثر باقی بماند.
برای ایجاد گلوله تصویری، یک تصویر بهPresentation.getImages اضافه کنید و شیء تصویر بازگرداندهشده را بهIBulletFormat.getPicture اختصاص دهید. قبل از اختصاص تصویر،IBulletFormat.setType را رویBulletType.Picture تنظیم کنید.
فرض کنید فایل “image.png” داریم:

کد Java زیر نحوه ایجاد گلولههای تصویری را در یک اسلاید نشان میدهد:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 20, 200, 50);
ITextFrame textFrame = autoShape.getTextFrame();
textFrame.getParagraphs().clear();
IPPImage bulletImage = presentation.getImages().addImage(Images.fromFile("image.png"));
Paragraph paragraph1 = new Paragraph();
paragraph1.getParagraphFormat().getBullet().setType(BulletType.Picture);
paragraph1.getParagraphFormat().getBullet().getPicture().setImage(bulletImage);
paragraph1.getParagraphFormat().setIndent(15);
paragraph1.getParagraphFormat().getBullet().setHeight(100);
paragraph1.setText("The first paragraph");
textFrame.getParagraphs().add(paragraph1);
Paragraph paragraph2 = new Paragraph();
paragraph2.getParagraphFormat().getBullet().setType(BulletType.Picture);
paragraph2.getParagraphFormat().getBullet().getPicture().setImage(bulletImage);
paragraph2.getParagraphFormat().setIndent(15);
paragraph2.getParagraphFormat().getBullet().setHeight(100);
paragraph2.setText("The second paragraph");
textFrame.getParagraphs().add(paragraph2);
presentation.save("picture_bullets.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
نتیجه:

ایجاد فهرست چندسطحی
ازIParagraphFormat.setDepth برای قرار دادن موارد فهرست در سطوح مختلف استفاده کنید. سطح 0 بالاترین سطح است، سطح 1 زیرمجموعه آن و به همین ترتیب.
کد Java زیر نحوه ایجاد فهرست گلولهای چندسطحی را نشان میدهد:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 20, 20, 260, 110);
ITextFrame textFrame = autoShape.getTextFrame();
textFrame.getParagraphs().clear();
Paragraph paragraph1 = new Paragraph();
paragraph1.getParagraphFormat().setDepth((short) 0);
paragraph1.setText("My text - Depth 0");
textFrame.getParagraphs().add(paragraph1);
Paragraph paragraph2 = new Paragraph();
paragraph2.getParagraphFormat().setDepth((short) 1);
paragraph2.setText("My text - Depth 1");
textFrame.getParagraphs().add(paragraph2);
Paragraph paragraph3 = new Paragraph();
paragraph3.getParagraphFormat().setDepth((short) 2);
paragraph3.setText("My text - Depth 2");
textFrame.getParagraphs().add(paragraph3);
Paragraph paragraph4 = new Paragraph();
paragraph4.getParagraphFormat().setDepth((short) 3);
paragraph4.setText("My text - Depth 3");
textFrame.getParagraphs().add(paragraph4);
presentation.save("multilevel_bullets.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
نتیجه:

تغییر فهرست موجود
برای تغییر قالببندی فهرست در یک ارائه موجود، پاراگراف هدف را دسترسی یافته و تنظیماتIParagraphFormat.getBullet آن را بهروزرسانی کنید. همان خصوصیات استفادهشده برای ایجاد فهرستها میتوانند برای بررسی یا اصلاح فهرستهای بارگذاریشده از فایلهای PPT، PPTX یا ODP به کار روند.
کد Java زیر اولین پاراگراف در یک چارچوب متن را به سبک فهرست شمارهدار تغییر میدهد:
Presentation presentation = new Presentation("input.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
IAutoShape autoShape = (IAutoShape) slide.getShapes().get_Item(0);
IParagraph paragraph = autoShape.getTextFrame().getParagraphs().get_Item(0);
paragraph.getParagraphFormat().getBullet().setType(BulletType.Numbered);
paragraph.getParagraphFormat().getBullet().setNumberedBulletStyle(NumberedBulletStyle.BulletRomanUCPeriod);
paragraph.getParagraphFormat().getBullet().setNumberedBulletStartWith((short) 1);
paragraph.getParagraphFormat().setMarginLeft(30);
paragraph.getParagraphFormat().setIndent(-20);
presentation.save("updated_list.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
سوالات متداول
آیا میتوان فهرستهای گلولهای و شمارهدار را به PDF یا تصویر صادر کرد؟
بله. Aspose.Slides قالببندی فهرست را زمانی که فرمت هدف از چیدمان متن و ویژگیهای گلوله مربوطه پشتیبانی کند، حفظ میکند.
آیا میتوان فهرستها را در ارائههای موجود ویرایش کرد؟
بله. ارائه را بارگذاری کنید، به پاراگراف هدف دسترسی پیدا کنید، تنظیماتIParagraphFormat.getBullet آن را بررسی یا بهروزرسانی کنید و سپس ارائه را ذخیره کنید.
آیا فهرستها میتوانند متن غیرلاتین داشته باشند؟
بله. متن مورد فهرست میتواند شامل کاراکترهای یونیکد باشد، بنابراین میتوانید فهرستها را در ارائههای چندزبانه ایجاد کنید. اطمینان حاصل کنید که فونتهای استفادهشده در ارائه از کاراکترهای مورد نیاز پشتیبانی میکنند.