pub struct OfdReader<R> { /* private fields */ }Expand description
Implementations§
Source§impl<R: Read + Seek> OfdReader<R>
impl<R: Read + Seek> OfdReader<R>
Sourcepub fn render_page(
&mut self,
doc: &LoadedDocument,
page_index: usize,
options: &RenderOptions,
) -> Result<Pixmap>
pub fn render_page( &mut self, doc: &LoadedDocument, page_index: usize, options: &RenderOptions, ) -> Result<Pixmap>
将文档第 page_index 页渲染为像素图(tiny_skia::Pixmap)。
page_index 为页树中的页序号(从 0 起)。
Sourcepub fn render_page_to_image(
&mut self,
doc: &LoadedDocument,
page_index: usize,
options: &RenderOptions,
) -> Result<RgbaImage>
pub fn render_page_to_image( &mut self, doc: &LoadedDocument, page_index: usize, options: &RenderOptions, ) -> Result<RgbaImage>
将指定页渲染为 image::RgbaImage。
Sourcepub fn render_page_to_bytes(
&mut self,
doc: &LoadedDocument,
page_index: usize,
options: &RenderOptions,
format: ImageFormat,
) -> Result<Vec<u8>>
pub fn render_page_to_bytes( &mut self, doc: &LoadedDocument, page_index: usize, options: &RenderOptions, format: ImageFormat, ) -> Result<Vec<u8>>
将指定页渲染并编码为给定格式的图片字节。
Sourcepub fn render_page_to_file<P: AsRef<Path>>(
&mut self,
doc: &LoadedDocument,
page_index: usize,
options: &RenderOptions,
path: P,
) -> Result<()>
pub fn render_page_to_file<P: AsRef<Path>>( &mut self, doc: &LoadedDocument, page_index: usize, options: &RenderOptions, path: P, ) -> Result<()>
将指定页渲染并写入文件,图片格式由路径扩展名推断。
支持的扩展名:png、jpg/jpeg、bmp、tif/tiff、gif、webp。
Source§impl<R: Read + Seek> OfdReader<R>
impl<R: Read + Seek> OfdReader<R>
Sourcepub fn load_signatures(&mut self) -> Result<Vec<LoadedSignature>>
pub fn load_signatures(&mut self) -> Result<Vec<LoadedSignature>>
装载文档登记的全部签名(Signatures.xml 及其引用的各 Signature.xml)。
遍历所有 DocBody,对声明了 Signatures 的文档解析其签名列表与每份签名
描述。返回的 LoadedSignature 携带在包内的解析路径,供完整性校验定位。
Sourcepub fn verify_signature(&mut self, loaded: &LoadedSignature) -> SignatureReport
pub fn verify_signature(&mut self, loaded: &LoadedSignature) -> SignatureReport
校验单个签名的完整性:逐个重算被保护文件的摘要并与 CheckValue 比对。
Sourcepub fn verify_signatures(&mut self) -> Result<Vec<SignatureReport>>
pub fn verify_signatures(&mut self) -> Result<Vec<SignatureReport>>
校验文档全部签名的完整性,返回逐个签名的报告。
Source§impl<R: Read + Seek> OfdReader<R>
impl<R: Read + Seek> OfdReader<R>
Sourcepub fn new(package: OfdPackage<R>) -> Result<Self>
pub fn new(package: OfdPackage<R>) -> Result<Self>
基于已打开的 OfdPackage 创建读取器,并解析主入口 OFD.xml。
Sourcepub fn package_mut(&mut self) -> &mut OfdPackage<R>
pub fn package_mut(&mut self) -> &mut OfdPackage<R>
底层容器的可变引用,便于读取本库未直接建模的部件。
Sourcepub fn load_document(&mut self, body: &DocBody) -> Result<LoadedDocument>
pub fn load_document(&mut self, body: &DocBody) -> Result<LoadedDocument>
装载某个版式文档的根节点(Document.xml)。
返回的 LoadedDocument 携带文档所在目录,供后续解析页、资源等
相对路径使用。
Sourcepub fn load_page(
&mut self,
doc: &LoadedDocument,
page: &PageRef,
) -> Result<PageObject>
pub fn load_page( &mut self, doc: &LoadedDocument, page: &PageRef, ) -> Result<PageObject>
装载页树中某一页的页对象(Content.xml)。
Sourcepub fn load_template(
&mut self,
doc: &LoadedDocument,
template: &CtTemplatePage,
) -> Result<PageObject>
pub fn load_template( &mut self, doc: &LoadedDocument, template: &CtTemplatePage, ) -> Result<PageObject>
装载某个模板页的内容(结构与普通页相同)。
Sourcepub fn load_resource(
&mut self,
doc: &LoadedDocument,
loc: &StLoc,
) -> Result<Res>
pub fn load_resource( &mut self, doc: &LoadedDocument, loc: &StLoc, ) -> Result<Res>
装载文档的一个资源文件(公共资源或文档资源)。
Auto Trait Implementations§
impl<R> Freeze for OfdReader<R>where
R: Freeze,
impl<R> RefUnwindSafe for OfdReader<R>where
R: RefUnwindSafe,
impl<R> Send for OfdReader<R>where
R: Send,
impl<R> Sync for OfdReader<R>where
R: Sync,
impl<R> Unpin for OfdReader<R>where
R: Unpin,
impl<R> UnsafeUnpin for OfdReader<R>where
R: UnsafeUnpin,
impl<R> UnwindSafe for OfdReader<R>where
R: UnwindSafe,
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