- 对齐图形:
通过设置
DisplayUnit 属性,可以对齐图形。以下是一些常见选项:
from pptx.enum.shapes import MSO_ANCHOR, MSO_AUTO_SIZE, MSO_VERTICAL_ANCHOR
from pptx.util import Cm
# 将形状向左对齐,并且垂直居中定位
shape.left = 0
shape.top = (slide_height - shape.height)/2
# 将形状垂直居中定位,左侧对齐
shape.left = 0
shape.vertical_anchor = MSO_VERTICAL_ANCHOR.MIDDLE
- 堆叠图形:
通过设置
ZOrderPosition 属性,可以让形状在 Z 轴上堆叠。
# 将形状放置在顶部
shape.z_order(0)
# 交换两个形状的堆叠位置
shape1.z_order_position, shape2.z_order_position =\
shape2.z_order_position, shape1.z_order_position
- 使图形相互接触:
通过计算两个形状之间的距离,并将一个形状的位置向另一个形状移动,可以使它们接触。
# 计算两个形状之间的距离
dx = shape2.left - (shape1.left + shape1.width)
dy = shape2.top - (shape1.top + shape1.height)
# 将一个形状向另一个形状移动
shape1.left += dx
shape1.top += dy