pub struct SlideLayoutRef { /* private fields */ }Expand description
单个版式的引用。
设计上使用 Rc<RefCell<OxmlSldLayout>> 而非直接拥有,以兼容“版式被母版
与页共享引用“的未来场景。当前实现下每个版式只被一个 SlideLayouts 拥有。
Implementations§
Source§impl SlideLayoutRef
impl SlideLayoutRef
Sourcepub fn layout_type(&self) -> String
pub fn layout_type(&self) -> String
取版式类型(OOXML 中的 type 属性,可选;如 blank / title / section)。
Sourcepub fn set_layout_type(&mut self, t: String)
pub fn set_layout_type(&mut self, t: String)
设置版式类型。
Sourcepub fn shapes(&self) -> Vec<OxmlSp>
pub fn shapes(&self) -> Vec<OxmlSp>
不可变 shape 列表(python-pptx slide_layout.shapes 风格)。
返回的是 OxmlSp 句柄的借用,不触发 clone;适合“只读浏览“。
Sourcepub fn shapes_mut(&self) -> RefMut<'_, Vec<OxmlSp>>
pub fn shapes_mut(&self) -> RefMut<'_, Vec<OxmlSp>>
可变 shape 列表。
Sourcepub fn placeholders(&self) -> Vec<Placeholder>
pub fn placeholders(&self) -> Vec<Placeholder>
占位符列表(python-pptx slide_layout.placeholders 风格)。
当前实现把所有带 is_placeholder=true 的 OxmlSp 视作占位符。
返回不可变快照,避免借用期跨越。
Sourcepub fn placeholder_indices(&self) -> Vec<usize>
pub fn placeholder_indices(&self) -> Vec<usize>
返回所有占位符在 shapes 中的索引列表(TODO-008)。
用于配合 shapes_mut 按索引修改占位符:
let indices = layout.placeholder_indices();
let mut shapes = layout.shapes_mut();
for i in indices {
// 修改第 i 个 shape(它是占位符)
shapes[i].name = format!("PH {}", i);
}Sourcepub fn placeholder_index_by_ph_idx(&self, ph_idx: u32) -> Option<usize>
pub fn placeholder_index_by_ph_idx(&self, ph_idx: u32) -> Option<usize>
按 ph_idx 查找占位符在 shapes 中的索引(TODO-008)。
返回第一个 ph_idx 匹配的 shapes 索引;未找到返回 None。
用于配合 shapes_mut 修改特定占位符。
Trait Implementations§
Source§impl Clone for SlideLayoutRef
impl Clone for SlideLayoutRef
Source§fn clone(&self) -> SlideLayoutRef
fn clone(&self) -> SlideLayoutRef
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for SlideLayoutRef
impl !Send for SlideLayoutRef
impl !Sync for SlideLayoutRef
impl !UnwindSafe for SlideLayoutRef
impl Freeze for SlideLayoutRef
impl Unpin for SlideLayoutRef
impl UnsafeUnpin for SlideLayoutRef
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more