pub struct Pic {Show 13 fields
pub id: u32,
pub name: String,
pub rid: String,
pub is_placeholder: bool,
pub ph_idx: Option<u32>,
pub ph_type: Option<String>,
pub properties: ShapeProperties,
pub src_rect: Option<(i32, i32, i32, i32)>,
pub fill_mode: BlipFillMode,
pub alpha: Option<i32>,
pub style: Option<ShapeStyle>,
pub ext_lst: Option<ExtensionList>,
pub media: Option<MediaKind>,
}Expand description
<p:pic> 图片。
Fields§
§id: u32§name: String§rid: String§is_placeholder: bool是否为占位符(TODO-007)。
true 时 write_xml 会在 <p:nvPicPr>/<p:nvPr> 内写出 <p:ph .../>。
图片占位符对应版式中的 <p:ph type="pic"/>,用户点击后弹出“插入图片“对话框。
ph_idx: Option<u32>占位符 idx(<p:ph idx="..."/>,仅当 is_placeholder 为 true 时有效)。
ph_type: Option<String>占位符类型(<p:ph type="..."/>)。
图片占位符通常为 "pic";None 时 write_xml 不写出 type 属性。
properties: ShapeProperties§src_rect: Option<(i32, i32, i32, i32)>图片裁剪。
fill_mode: BlipFillMode填充模式(拉伸/平铺/无)。
alpha: Option<i32>图片透明度(0-100000,30000 = 30% 不透明 / 70% 透明)。
对应 <a:blip> 内的 <a:alphaModFix amt="..."/> 元素。
常用于图片水印场景:alpha = Some(30_000) 表示 30% 不透明。
style: Option<ShapeStyle>主题样式引用(p:style,可选)。
ext_lst: Option<ExtensionList>扩展列表。
media: Option<MediaKind>媒体引用(TODO-033 音视频嵌入)。
None 表示普通图片;Some(MediaKind::Video { rid }) / Some(MediaKind::Audio { rid })
表示该 <p:pic> 实际是视频/音频形状,write_xml 会在 <p:nvPr> 内写出
<a:videoFile r:link="..."/> 或 <a:audioFile r:link="..."/>。
rid 指向媒体 part 的关系 id(与 self.rid 指向海报帧图片不同)。
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Pic
impl RefUnwindSafe for Pic
impl Send for Pic
impl Sync for Pic
impl Unpin for Pic
impl UnsafeUnpin for Pic
impl UnwindSafe for Pic
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