pub struct OfdReaderFacade { /* private fields */ }Expand description
OFD 解析器门面,提供完整的 OFD 文档读取能力。
对应 Java: org.ofdrw.reader.OFDReader
封装 OfdReader 的核心解析能力,额外提供:
ResourceLocator资源路径定位ResourceManage资源 ID 索引PageInfo页面元数据访问
§用法
use easyofd_reader::OfdReaderFacade;
let facade = OfdReaderFacade::open("document.ofd")?;
println!("页数: {}", facade.page_count());Implementations§
Source§impl OfdReaderFacade
impl OfdReaderFacade
Sourcepub fn from_bytes(data: &[u8]) -> OfdResult<Self>
pub fn from_bytes(data: &[u8]) -> OfdResult<Self>
Sourcepub fn from_reader(reader: OfdReader) -> Self
pub fn from_reader(reader: OfdReader) -> Self
从已有的 OfdReader 创建门面。
Sourcepub fn resource_locator(&self) -> &ResourceLocator
pub fn resource_locator(&self) -> &ResourceLocator
获取资源定位器。
对应 Java: OFDReader.getResourceLocator()
Sourcepub fn resource_locator_mut(&mut self) -> &mut ResourceLocator
pub fn resource_locator_mut(&mut self) -> &mut ResourceLocator
获取可变资源定位器。
Sourcepub fn page_count(&self) -> usize
pub fn page_count(&self) -> usize
获取文档页数。
对应 Java: OFDReader.getNumberOfPages()
Sourcepub fn get_page_info(&self, page_num: usize) -> Option<PageInfo>
pub fn get_page_info(&self, page_num: usize) -> Option<PageInfo>
获取指定页面的信息。
对应 Java: OFDReader.getPageInfo(int pageNum)
page_num 从 1 开始。
Sourcepub fn get_page_list(&self) -> Vec<PageInfo>
pub fn get_page_list(&self) -> Vec<PageInfo>
获取所有页面信息列表。
对应 Java: OFDReader.getPageList()
Sourcepub fn metadata(&self) -> &OfdMetadata
pub fn metadata(&self) -> &OfdMetadata
获取文档元数据。
Sourcepub fn extract_text(&self) -> Vec<String>
pub fn extract_text(&self) -> Vec<String>
提取所有页面的文本。
Sourcepub fn extract_all_text(&self) -> String
pub fn extract_all_text(&self) -> String
提取所有文本合并为单个字符串。
Sourcepub fn resource_manage(&self) -> Option<&ResourceManage>
pub fn resource_manage(&self) -> Option<&ResourceManage>
获取资源管理器。
对应 Java: OFDReader.getResMgt()
Sourcepub fn set_resource_manage(&mut self, mgr: ResourceManage)
pub fn set_resource_manage(&mut self, mgr: ResourceManage)
设置资源管理器。
Sourcepub fn has_signature(&self) -> bool
pub fn has_signature(&self) -> bool
文档是否包含数字签名。
对应 Java: OFDReader.hasSignature()
Sourcepub fn raw_entries(&self) -> &[(String, Vec<u8>)]
pub fn raw_entries(&self) -> &[(String, Vec<u8>)]
获取原始 ZIP 条目(用于无损 roundtrip)。
Trait Implementations§
Auto Trait Implementations§
impl Freeze for OfdReaderFacade
impl RefUnwindSafe for OfdReaderFacade
impl Send for OfdReaderFacade
impl Sync for OfdReaderFacade
impl Unpin for OfdReaderFacade
impl UnsafeUnpin for OfdReaderFacade
impl UnwindSafe for OfdReaderFacade
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