Skip to main content

OfdReaderFacade

Struct OfdReaderFacade 

Source
pub struct OfdReaderFacade { /* private fields */ }
Expand description

OFD 解析器门面,提供完整的 OFD 文档读取能力。

对应 Java: org.ofdrw.reader.OFDReader

封装 OfdReader 的核心解析能力,额外提供:

§用法

use easyofd_reader::OfdReaderFacade;

let facade = OfdReaderFacade::open("document.ofd")?;
println!("页数: {}", facade.page_count());

Implementations§

Source§

impl OfdReaderFacade

Source

pub fn open(path: impl AsRef<Path>) -> OfdResult<Self>

从文件路径打开 OFD 文档。

对应 Java: OFDReader(Path ofdFile)

§错误

文件无法读取或 OFD 数据无效时返回错误。

Source

pub fn from_bytes(data: &[u8]) -> OfdResult<Self>

从字节数组解析 OFD 文档。

对应 Java: OFDReader(InputStream stream)

§错误

数据无效时返回错误。

Source

pub fn from_reader(reader: OfdReader) -> Self

从已有的 OfdReader 创建门面。

Source

pub fn from_seek<R: Read + Seek>( source: R, options: ReadOptions, ) -> OfdResult<Self>

Read + Seek 输入创建门面。

§错误

ZIP 包或 XML 无效时返回错误。

Source

pub fn reader(&self) -> &OfdReader

获取内部的 OfdReader 引用。

Source

pub fn resource_locator(&self) -> &ResourceLocator

获取资源定位器。

对应 Java: OFDReader.getResourceLocator()

Source

pub fn resource_locator_mut(&mut self) -> &mut ResourceLocator

获取可变资源定位器。

Source

pub fn page_count(&self) -> usize

获取文档页数。

对应 Java: OFDReader.getNumberOfPages()

Source

pub fn pages(&self) -> &[OfdPage]

获取所有页面。

Source

pub fn get_page_info(&self, page_num: usize) -> Option<PageInfo>

获取指定页面的信息。

对应 Java: OFDReader.getPageInfo(int pageNum)

page_num 从 1 开始。

Source

pub fn get_page_list(&self) -> Vec<PageInfo>

获取所有页面信息列表。

对应 Java: OFDReader.getPageList()

Source

pub fn metadata(&self) -> &OfdMetadata

获取文档元数据。

Source

pub fn extract_text(&self) -> Vec<String>

提取所有页面的文本。

Source

pub fn extract_all_text(&self) -> String

提取所有文本合并为单个字符串。

Source

pub fn resource_manage(&self) -> Option<&ResourceManage>

获取资源管理器。

对应 Java: OFDReader.getResMgt()

Source

pub fn set_resource_manage(&mut self, mgr: ResourceManage)

设置资源管理器。

Source

pub fn has_signature(&self) -> bool

文档是否包含数字签名。

对应 Java: OFDReader.hasSignature()

Source

pub fn raw_entries(&self) -> &[(String, Vec<u8>)]

获取原始 ZIP 条目(用于无损 roundtrip)。

Trait Implementations§

Source§

impl Debug for OfdReaderFacade

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.