مدیریت پسزمینههای ارائه در اندروید
مقدمه
رنگهای ثابت، گرادیانها و تصاویر معمولاً برای پسزمینه اسلایدها استفاده میشوند. میتوانید پسزمینه را برای یک اسلاید عادی (یک اسلاید منفرد) یا یک اسلاید اصلی (که به چندین اسلاید بهصورت همزمان اعمال میشود) تنظیم کنید.

تنظیم پسزمینه رنگ ثابت برای اسلاید عادی
Aspose.Slides به شما امکان میدهد یک رنگ ثابت را بهعنوان پسزمینه یک اسلاید خاص در یک ارائه تنظیم کنید — حتی اگر ارائه از اسلاید اصلی استفاده کند. این تغییر تنها بر روی اسلاید انتخابشده اعمال میشود.
- یک نمونه از کلاس Presentation ایجاد کنید.
- نوع پسزمینه اسلاید را با استفاده از BackgroundType به
OwnBackgroundتنظیم کنید. - پسزمینه اسلاید را با استفاده از FillType به
Solidتنظیم کنید. - از متد getSolidFillColor در FillFormat استفاده کنید تا رنگ پسزمینه ثابت را مشخص کنید.
- ارائه تغییر یافته را ذخیره کنید.
// یک نمونه از کلاس Presentation ایجاد کنید.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// رنگ پسزمینه اسلاید را به آبی تنظیم کنید.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Solid);
slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// ارائه را روی دیسک ذخیره کنید.
presentation.save("SolidColorBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
تنظیم پسزمینه رنگ ثابت برای اسلاید اصلی
Aspose.Slides به شما امکان میدهد یک رنگ ثابت را بهعنوان پسزمینه اسلاید اصلی در یک ارائه تنظیم کنید. اسلاید اصلی بهعنوان الگو عمل میکند و قالببندی تمام اسلایدها را کنترل میکند، بنابراین هنگامی که یک رنگ ثابت برای پسزمینه اسلاید اصلی انتخاب میکنید، بر تمام اسلایدها اعمال میشود.
- یک نمونه از کلاس Presentation ایجاد کنید.
- نوع پسزمینه اسلاید اصلی را (از طریق
getMasters) با استفاده از BackgroundType بهOwnBackgroundتنظیم کنید. - پسزمینه اسلاید اصلی را با استفاده از FillType به
Solidتنظیم کنید. - از متد getSolidFillColor استفاده کنید تا رنگ پسزمینه ثابت را مشخص کنید.
- ارائه تغییر یافته را ذخیره کنید.
// یک نمونه از کلاس Presentation ایجاد کنید.
Presentation presentation = new Presentation();
try {
IMasterSlide masterSlide = presentation.getMasters().get_Item(0);
// رنگ پسزمینه اسلاید اصلی را به سبز جنگلی تنظیم کنید.
masterSlide.getBackground().setType(BackgroundType.OwnBackground);
masterSlide.getBackground().getFillFormat().setFillType(FillType.Solid);
masterSlide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// ارائه را روی دیسک ذخیره کنید.
presentation.save("MasterSlideBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
تنظیم پسزمینه گرادیان برای اسلاید
یک گرادیان اثر گرافیکی است که با تغییر تدریجی رنگ ایجاد میشود. هنگام استفاده بهعنوان پسزمینه اسلاید، گرادیانها میتوانند نمایش ارائه را هنریتر و حرفهایتر کنند. Aspose.Slides به شما امکان میدهد رنگ گرادیان را بهعنوان پسزمینه اسلایدها تنظیم کنید.
- یک نمونه از کلاس Presentation ایجاد کنید.
- نوع پسزمینه اسلاید را با استفاده از BackgroundType به
OwnBackgroundتنظیم کنید. - پسزمینه اسلاید را با استفاده از FillType به
Gradientتنظیم کنید. - از متد getGradientFormat در FillFormat استفاده کنید تا تنظیمات دلخواه گرادیان را پیکربندی کنید.
- ارائه تغییر یافته را ذخیره کنید.
// یک نمونه از کلاس Presentation ایجاد کنید.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// یک اثر گرادیان را به پسزمینه اعمال کنید.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Gradient);
slide.getBackground().getFillFormat().getGradientFormat().setTileFlip(TileFlip.FlipBoth);
// ارائه را روی دیسک ذخیره کنید.
presentation.save("GradientBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
تنظیم تصویر بهعنوان پسزمینه اسلاید
علاوه بر پرکنندههای ثابت و گرادیان، Aspose.Slides به شما امکان میدهد از تصاویر بهعنوان پسزمینه اسلایدها استفاده کنید.
- یک نمونه از کلاس Presentation ایجاد کنید.
- نوع پسزمینه اسلاید را با استفاده از BackgroundType به
OwnBackgroundتنظیم کنید. - پسزمینه اسلاید را با استفاده از FillType به
Pictureتنظیم کنید. - تصویری را که میخواهید بهعنوان پسزمینه اسلاید استفاده کنید بارگذاری کنید.
- تصویر را به مجموعه تصاویر ارائه اضافه کنید.
- از متد getPictureFillFormat در FillFormat استفاده کنید تا تصویر را بهعنوان پسزمینه اختصاص دهید.
- ارائه تغییر یافته را ذخیره کنید.
// یک نمونه از کلاس Presentation ایجاد کنید.
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// ویژگیهای تصویر پسزمینه را تنظیم کنید.
slide.getBackground().setType(BackgroundType.OwnBackground);
slide.getBackground().getFillFormat().setFillType(FillType.Picture);
slide.getBackground().getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Stretch);
// بارگذاری تصویر.
IImage image = Images.fromFile("Tulips.jpg");
// تصویر را به مجموعه تصاویر ارائه اضافه کنید.
IPPImage ppImage = presentation.getImages().addImage(image);
image.dispose();
slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().setImage(ppImage);
// ارائه را روی دیسک ذخیره کنید.
presentation.save("ImageAsBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Presentation presentation = new Presentation();
try {
ISlide firstSlide = presentation.getSlides().get_Item(0);
IBackground background = firstSlide.getBackground();
background.setType(BackgroundType.OwnBackground);
background.getFillFormat().setFillType(FillType.Picture);
IImage newImage = Images.fromFile("image.png");
IPPImage ppImage = presentation.getImages().addImage(newImage);
newImage.dispose();
// تصویر استفادهشده برای پرکردن پسزمینه را تنظیم کنید.
IPictureFillFormat backPictureFillFormat = background.getFillFormat().getPictureFillFormat();
backPictureFillFormat.getPicture().setImage(ppImage);
// حالت پرکردن تصویر را به کاشی تنظیم کنید و ویژگیهای کاشی را تنظیم کنید.
backPictureFillFormat.setPictureFillMode(PictureFillMode.Tile);
backPictureFillFormat.setTileOffsetX(15f);
backPictureFillFormat.setTileOffsetY(15f);
backPictureFillFormat.setTileScaleX(46f);
backPictureFillFormat.setTileScaleY(87f);
backPictureFillFormat.setTileAlignment(RectangleAlignment.Center);
backPictureFillFormat.setTileFlip(TileFlip.FlipY);
presentation.save("TileBackground.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
تغییر شفافیت تصویر پسزمینه
ممکن است بخواهید شفافیت تصویر پسزمینه اسلاید را تنظیم کنید تا محتویات اسلاید برجستهتر شوند. کد Java زیر نشان میدهد چگونه شفافیت تصویر پسزمینه اسلاید را تغییر دهید:
int transparencyValue = 30; // به عنوان مثال.
// دستهٔ عملیات تبدیل تصویر را دریافت کنید.
IImageTransformOperationCollection imageTransform = slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().getImageTransform();
// یک افکت شفافیت با درصد ثابت موجود را پیدا کنید.
IAlphaModulateFixed transparencyOperation = null;
for (IImageTransformOperation operation : imageTransform) {
if (operation instanceof IAlphaModulateFixed) {
transparencyOperation = (IAlphaModulateFixed)operation;
break;
}
}
// مقدار شفافیت جدید را تنظیم کنید.
if (transparencyOperation == null) {
imageTransform.addAlphaModulateFixedEffect(100 - transparencyValue);
}
else {
transparencyOperation.setAmount(100 - transparencyValue);
}
دریافت مقدار پسزمینه اسلاید
Aspose.Slides رابط IBackgroundEffectiveData را برای بازیابی مقادیر موثر پسزمینه اسلاید فراهم میکند. این رابط FillFormat و EffectFormat موثر را در اختیار میگذارد.
با استفاده از متد getBackground کلاس BaseSlide، میتوانید پسزمینه موثر یک اسلاید را بدست آورید.
// یک نمونه از کلاس Presentation ایجاد کنید.
Presentation presentation = new Presentation("Sample.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
// پسزمینه مؤثر را بازیابی کنید، بههمراه در نظر گرفتن اسلاید اصلی، طرحبندی و تم.
IBackgroundEffectiveData effBackground = slide.getBackground().getEffective();
if (effBackground.getFillFormat().getFillType() == FillType.Solid)
System.out.println("Fill color: " + effBackground.getFillFormat().getSolidFillColor());
else
System.out.println("Fill type: " + effBackground.getFillFormat().getFillType());
} finally {
presentation.dispose();
}
پرسشهای متداول
آیا میتوانم پسزمینه سفارشی را بازنشانی کرده و پسزمینه تم/چیدمان را بازیابی کنم؟
بله. پر کردن سفارشی اسلاید را حذف کنید و پسزمینه دوباره از اسلاید layout/master مربوطه (یعنی theme background) به ارث میرسد.
اگر بعداً تم ارائه را تغییر دهم، چه اتفاقی برای پسزمینه میافتد؟
اگر اسلاید پر کردن خود را داشته باشد، بدون تغییر میماند. اگر پسزمینه از layout/master به ارث برده شده باشد، با تم جدید بهروزرسانی میشود.