Skip to main content

Module base

Module base 

Source
Expand description

Shape:所有形状的“基类“包装。

本文件定义高阶形状的统一接口 Shape,由 AutoShape / TextBox / Picture / Group / Connector / TableShape 各自实现。

§设计要点

  • 位置 / 尺寸 / 旋转 等通用属性被提到 trait 层,避免在每个形状上重复定义;
  • 类型相关的属性(如 Picture::set_stretchConnector::cxn)保留在 具体类型的 impl 块中;
  • trait 方法均只读 / 可变访问 self,不返回额外句柄, 避免破坏“借用 oxml 模型“的不变式。

§与 python-pptx 的对应

  • pptx.shapes.base.BaseShape ←→ Shape trait;
  • python-pptx 把通用属性都挂在 BaseShape 上,python 端可以直接调用; 本库因 Rust trait 限制需要在每个 impl 上“转发“方法。

Traits§

Shape
高阶形状的抽象接口。