演示文稿背景
Contents
[
Hide
]
纯色、渐变色和图片通常用作幻灯片的背景图像。您可以为普通幻灯片(单张幻灯片)或母版幻灯片(一次多张幻灯片)设置背景。
为普通幻灯片设置纯色背景
Aspose.Slides 允许您为演示文稿中的特定幻灯片设置纯色作为背景(即使该演示文稿包含母版幻灯片)。背景的更改仅影响所选幻灯片。
- 创建 Presentation 类的实例。
- 将幻灯片的 BackgroundType 枚举设置为
OwnBackground
。 - 将幻灯片背景的 FillType 枚举设置为
Solid
。 - 使用 SolidFillColor 属性,指定背景的纯色。
- 保存修改后的演示文稿。
这段 Java 代码显示了如何为普通幻灯片设置纯色(蓝色)作为背景:
// 创建 Presentation 类的实例
Presentation pres = new Presentation("MasterBG.pptx");
try {
// 将第一张 ISlide 的背景颜色设置为蓝色
pres.getSlides().get_Item(0).getBackground().setType(BackgroundType.OwnBackground);
pres.getSlides().get_Item(0).getBackground().getFillFormat().setFillType(FillType.Solid);
pres.getSlides().get_Item(0).getBackground().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// 将演示文稿写入磁盘
pres.save("ContentBG.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
为母版幻灯片设置纯色背景
Aspose.Slides 允许您为演示文稿中的母版幻灯片设置纯色作为背景。母版幻灯片作为模板,包含并控制所有幻灯片的格式设置。因此,当您为母版幻灯片选择纯色作为背景时,该新背景将应用于所有幻灯片。
- 创建 Presentation 类的实例。
- 将母版幻灯片(
Masters
)的 BackgroundType 枚举设置为OwnBackground
。 - 将母版幻灯片背景的 FillType 枚举设置为
Solid
。 - 使用 SolidFillColor 属性,指定背景的纯色。
- 保存修改后的演示文稿。
这段 Java 代码显示了如何为演示文稿中的母版幻灯片设置纯色(森林绿)作为背景:
// 创建 Presentation 类的实例
Presentation pres = new Presentation();
try {
// 将母版 ISlide 的背景颜色设置为森林绿
pres.getMasters().get_Item(0).getBackground().setType(BackgroundType.OwnBackground);
pres.getMasters().get_Item(0).getBackground().getFillFormat().setFillType(FillType.Solid);
pres.getMasters().get_Item(0).getBackground().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// 将演示文稿写入磁盘
pres.save("MasterBG.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
为幻灯片设置渐变色背景
渐变是一种基于颜色渐变变化的图形效果。渐变色作为幻灯片的背景,使演示文稿看起来更具艺术感和专业性。Aspose.Slides 允许您为演示文稿中的幻灯片设置渐变色作为背景。
- 创建 Presentation 类的实例。
- 将幻灯片的 BackgroundType 枚举设置为
OwnBackground
。 - 将母版幻灯片背景的 FillType 枚举设置为
Gradient
。 - 使用 GradientFormat 属性指定您偏好的渐变设置。
- 保存修改后的演示文稿。
这段 Java 代码显示了如何为幻灯片设置渐变色作为背景:
// 创建 Presentation 类的实例
Presentation pres = new Presentation("MasterBG.pptx");
try {
// 应用渐变效果到背景
pres.getSlides().get_Item(0).getBackground().setType(BackgroundType.OwnBackground);
pres.getSlides().get_Item(0).getBackground().getFillFormat().setFillType(FillType.Gradient);
pres.getSlides().get_Item(0).getBackground().getFillFormat().getGradientFormat().setTileFlip(TileFlip.FlipBoth);
// 将演示文稿写入磁盘
pres.save("ContentBG_Grad.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
为幻灯片设置图片作为背景
除了纯色和渐变色,Aspose.Slides 还允许您为演示文稿中的幻灯片设置图片作为背景。
- 创建 Presentation 类的实例。
- 将幻灯片的 BackgroundType 枚举设置为
OwnBackground
。 - 将母版幻灯片背景的 FillType 枚举设置为
Picture
。 - 加载您要作为幻灯片背景使用的图片。
- 将图像添加到演示文稿的图像集合中。
- 使用 PictureFillFormat 属性将图像设置为背景。
- 保存修改后的演示文稿。
这段 Java 代码显示了如何将图片设置为幻灯片的背景:
// 创建 Presentation 类的实例
Presentation pres = new Presentation();
try {
// 设置背景图片的条件
pres.getSlides().get_Item(0).getBackground().setType(BackgroundType.OwnBackground);
pres.getSlides().get_Item(0).getBackground().getFillFormat().setFillType(FillType.Picture);
pres.getSlides().get_Item(0).getBackground().getFillFormat().getPictureFillFormat()
.setPictureFillMode(PictureFillMode.Stretch);
// 加载图片
IPPImage imgx;
IImage image = Images.fromFile("Desert.jpg");
try {
imgx = pres.getImages().addImage(image);
} finally {
if (image != null) image.dispose();
}
// 将图片添加到演示文稿的图像集合中
pres.getSlides().get_Item(0).getBackground().getFillFormat().getPictureFillFormat().getPicture().setImage(imgx);
// 将演示文稿写入磁盘
pres.save("ContentBG_Img.pptx", SaveFormat.Pptx);
} catch (IOException e) {
} finally {
if (pres != null) pres.dispose();
}
更改背景图像的透明度
您可能希望调整幻灯片背景图像的透明度,以使幻灯片的内容更加突出。以下 Java 代码示范了如何更改幻灯片背景图像的透明度:
int transparencyValue = 30; // 例如
// 获取图像变换操作的集合
IImageTransformOperationCollection imageTransform = slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().getImageTransform();
// 查找具有固定百分比的透明度效果。
AlphaModulateFixed transparencyOperation = null;
for (IImageTransformOperation operation : imageTransform)
{
if (operation instanceof AlphaModulateFixed)
{
transparencyOperation = (AlphaModulateFixed)operation;
break;
}
}
// 设置新的透明度值。
if (transparencyOperation == null)
{
imageTransform.addAlphaModulateFixedEffect(100 - transparencyValue);
}
else
{
transparencyOperation.setAmount(100 - transparencyValue);
}
获取幻灯片背景的值
Aspose.Slides 提供了 IBackgroundEffectiveData 接口,以允许您获取幻灯片背景的有效值。此接口包含关于有效 FillFormat 和有效 EffectFormat 的信息。
使用 Background 属性,您可以获取幻灯片背景的有效值。
这段 Java 代码显示了如何获取幻灯片的有效背景值:
// 创建 Presentation 类的实例
Presentation pres = new Presentation("SamplePresentation.pptx");
try {
IBackgroundEffectiveData effBackground = pres.getSlides().get_Item(0).getBackground().getEffective();
if (effBackground.getFillFormat().getFillType() == FillType.Solid)
System.out.println("填充颜色: " + effBackground.getFillFormat().getSolidFillColor());
else
System.out.println("填充类型: " + effBackground.getFillFormat().getFillType());
} finally {
if (pres != null) pres.dispose();
}