在 Python 中通过 Java 向演示文稿添加矩形
概述
本文介绍如何使用 Aspose.Slides 向 PowerPoint 幻灯片添加矩形形状。它涵盖了创建一个简单矩形、创建格式化矩形以及将更新后的演示文稿保存为 PPTX 文件。您还将了解如何应用基本的矩形格式设置,例如实心填充颜色、线条颜色和线宽。此外,本文的 FAQ 还指向相关的矩形任务,包括圆角、图片填充、视觉效果、超链接、形状锁定、导出选项以及有效属性。
向幻灯片添加矩形
要向演示文稿的选定幻灯片添加一个简单矩形,请按以下步骤操作:
- 创建一个 Presentation 类的实例。
- 通过索引获取幻灯片的引用。
- 使用 ShapeCollection 对象公开的 addAutoShape 方法,添加一种矩形类型的 AutoShape。
- 将修改后的演示文稿写入为 PPTX 文件。
在下面的示例中,我们已向演示文稿的第一张幻灯片添加了一个简单矩形。
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, ShapeType
# 实例化表示 PPTX 文件的 Presentation 类。
presentation = Presentation()
try:
# 获取第一张幻灯片。
slide = presentation.getSlides().get_Item(0)
# 添加矩形形状。
slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 50)
# 将 PPTX 文件写入磁盘。
presentation.save("RecShp1.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
向幻灯片添加格式化矩形
要向幻灯片添加格式化矩形,请按以下步骤操作:
- 创建一个 Presentation 类的实例。
- 通过索引获取幻灯片的引用。
- 使用 ShapeCollection 对象公开的 addAutoShape 方法,添加一种矩形类型的 AutoShape。
- 将矩形的 fill type 设置为实心。
- 使用关联的 Shape 对象的 FillFormat 对象的实心填充颜色上的 setColor 方法设置矩形的颜色。
- 设置矩形轮廓的颜色。
- 设置矩形轮廓的宽度。
- 将修改后的演示文稿写入为 PPTX 文件。
上述步骤已在下面的示例中实现。
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import FillType, Presentation, SaveFormat, ShapeType
from java.awt import Color
# 实例化表示 PPTX 文件的 Presentation 类。
presentation = Presentation()
try:
# 获取第一张幻灯片。
slide = presentation.getSlides().get_Item(0)
# 添加矩形形状。
rectangle = slide.getShapes().addAutoShape(ShapeType.Rectangle, 50, 150, 150, 50)
# 格式化矩形的填充。
rectangle.getFillFormat().setFillType(FillType.Solid)
rectangle.getFillFormat().getSolidFillColor().setColor(Color.GRAY)
# 格式化矩形的轮廓。
rectangle.getLineFormat().getFillFormat().setFillType(FillType.Solid)
rectangle.getLineFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK)
rectangle.getLineFormat().setWidth(5)
# 将 PPTX 文件写入磁盘。
presentation.save("RecShp2.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
常见问题
如何添加带圆角的矩形?
使用圆角 shape type 并在形状属性中调整角半径;也可以通过几何调整对每个角单独进行圆角处理。
如何使用图像(纹理)填充矩形?
选择图片 fill type,提供图像来源,并配置 stretching/tiling modes。
矩形可以拥有阴影和辉光吗?
可以。Outer/inner shadow, glow, and soft edges 均可使用,并提供可调参数。
我可以将矩形转换为带超链接的按钮吗?
可以。为形状点击Assign a hyperlink(跳转到幻灯片、文件、网页地址或电子邮件)。
如何保护矩形不被移动或更改?
Use shape locks:您可以禁止移动、调整大小、选择或文本编辑,以保留布局。
我可以将矩形转换为光栅图像或 SVG 吗?
可以。您可以render the shape 为具有指定尺寸/比例的图像,或export it as SVG 导出为 SVG 以供矢量使用。
如何快速获取考虑主题和继承的矩形实际(有效)属性?
Use the shape’s effective properties:API 返回考虑主题样式、布局和本地设置的计算值,从而简化格式分析。