public class OFDReader extends Object implements Closeable
| 限定符和类型 | 字段和说明 |
|---|---|
protected ResourceLocator |
rl
资源定位器
解析路径获取资源
|
| 构造器和说明 |
|---|
OFDReader(InputStream stream)
构造一个 OFDReader
|
OFDReader(Path ofdFile)
构造一个 OFDReader
|
OFDReader(String ofdFileLoc)
构造一个 OFDReader
|
OFDReader(String unzippedPathRoot,
boolean deleteOnClose)
因一些ofd文件无法使用ZipUtil解压缩,可以让用户自己在外面解压缩好后,传入根目录创建
例如用户可以使用unzip或者unar等命令行方式解压缩,因此通过参数控制是否删除目录。
|
| 限定符和类型 | 方法和说明 |
|---|---|
Document |
cdDefaultDoc()
切换目录到默认的文档目录下下
该操作将会导致资源加载器变更目录
如果需要恢复被切换的目录请主动在外部调用restore
|
Document |
cdDoc(int numOfDoc)
切换目录到指定的文档下
该操作将会导致资源加载器变更目录
如果需要恢复被切换的目录请主动在外部调用restore
|
void |
close()
关闭文档
删除工作区
|
List<AnnotionEntity> |
getAnnotationEntities()
获取默认文档中的所有注释信息
|
Annotations |
getAnnotations()
获取注解列表文件对象
如果文档中没有注释文件,那么返还null
|
CT_Attachment |
getAttachment(String name)
获取附件对象
该方法不会恢复资源定位器
|
Path |
getAttachmentFile(CT_Attachment attachment)
获取附件文件
注意:该文件会在Close Reader时候被删除,请在之前复制到其他地方
|
Path |
getAttachmentFile(String name)
获取附件文件
注意:该文件会在Close Reader时候被删除,请在之前复制到其他地方
|
List<CT_Attachment> |
getAttachmentList()
获取所有附件对象
注意该对象均为只读
|
ST_Loc |
getDefaultDocSignaturesPath()
获取默认文档Doc_0中的签名列表文件的绝对路径
|
Signatures |
getDefaultSignatures()
获取默认的签名列表对象
如果文件不存在则返还null
|
Document |
getDoc(int numOfDoc)
获取文档对象
|
int |
getNumberOfPages()
获取OFD含有的总页面数量
|
OFDDir |
getOFDDir()
获取文档虚拟容器
|
Page |
getPage(int pageNum)
通过页面页码获取页面对象
|
PageInfo |
getPageInfo(int pageNum)
获取页面信息
|
List<PageInfo> |
getPageList()
获取 页面信息集合
|
ST_ID |
getPageObjectId(int pageNum)
获取页面的对象ID
|
ST_Box |
getPageSize(int num)
获取页面物理大小
|
ST_Box |
getPageSize(Page page)
获取页面物理大小
如果页面没有定义页面区域,则使用文件 CommonData中的定义
|
ResourceManage |
getResMgt()
获取资源管理器
资源管理器获取到的对象均为只读对象
|
ResourceLocator |
getResourceLocator()
获取资源定位器
|
List<StampAnnotEntity> |
getStampAnnots()
获取默认文档中的签章信息
|
TemplatePageEntity |
getTemplate(String id)
解析页面模板对象
|
Path |
getWorkDir() |
boolean |
hasSignature()
文档是否包含数字签名
|
static void |
setNamespaceStrictMode(boolean enable)
启用或关闭命名空间严格解析模式
启用严格模式后将会忽略非ofd命名空间的元素。
|
static void |
setZipFileMaxSize(long size)
设置 OFD解压后最大占用文件大小
默认值: 100MB
|
protected ResourceLocator rl
解析路径获取资源
public OFDReader(Path ofdFile) throws IOException
ofdFile - OFD文件IOException - OFD文件操作IO异常public OFDReader(String ofdFileLoc) throws IOException
ofdFileLoc - OFD文件位置,例如:”/home/user/myofd.ofd“IOException - OFD文件操作IO异常public OFDReader(InputStream stream) throws IOException
stream - OFD文件输入流,流由调用者负责关闭。IOException - OFD文件操作IO异常public OFDReader(String unzippedPathRoot, boolean deleteOnClose)
unzippedPathRoot - 已经解压的OFD根目录位置deleteOnClose - 退出时是否删除 unzippedPathRoot 文件, true - 退出时删除;false - 不删除public Path getWorkDir()
public static void setZipFileMaxSize(long size)
默认值: 100MB
size - 解压文件大小,单位字节(Byte)public OFDDir getOFDDir()
public ST_Loc getDefaultDocSignaturesPath()
BadOFDException - 错误OFD结构和文件格式导致结构无法解析public Signatures getDefaultSignatures()
如果文件不存在则返还null
public boolean hasSignature()
public Annotations getAnnotations()
如果文档中没有注释文件,那么返还null
public int getNumberOfPages()
public PageInfo getPageInfo(int pageNum)
pageNum - 页码,从1开始public TemplatePageEntity getTemplate(String id)
id - 模板IDpublic Document cdDoc(int numOfDoc) throws org.dom4j.DocumentException, FileNotFoundException
该操作将会导致资源加载器变更目录
如果需要恢复被切换的目录请主动在外部调用restore
numOfDoc - 文档序号org.dom4j.DocumentException - 文档解析异常FileNotFoundException - Document.xml文档不存在public Document getDoc(int numOfDoc) throws org.dom4j.DocumentException, FileNotFoundException
numOfDoc - 文档序号org.dom4j.DocumentException - 文档解析异常FileNotFoundException - Document.xml文档不存在public Document cdDefaultDoc() throws org.dom4j.DocumentException, FileNotFoundException
该操作将会导致资源加载器变更目录
如果需要恢复被切换的目录请主动在外部调用restore
org.dom4j.DocumentException - 文档解析异常FileNotFoundException - Document.xml文档不存在public ST_Box getPageSize(Page page)
如果页面没有定义页面区域,则使用文件 CommonData中的定义
page - 页面对象public ST_Box getPageSize(int num)
num - 页码,从1起public Page getPage(int pageNum)
pageNum - 页码,从1起public ST_ID getPageObjectId(int pageNum)
pageNum - 页码public ResourceLocator getResourceLocator()
public List<CT_Attachment> getAttachmentList()
注意该对象均为只读
BadOFDException - 文档结构损坏public Path getAttachmentFile(CT_Attachment attachment)
注意:该文件会在Close Reader时候被删除,请在之前复制到其他地方
attachment - 附件信息public CT_Attachment getAttachment(String name)
该方法不会恢复资源定位器
name - 附件名称public Path getAttachmentFile(String name)
注意:该文件会在Close Reader时候被删除,请在之前复制到其他地方
name - 附件名称public List<StampAnnotEntity> getStampAnnots()
public List<AnnotionEntity> getAnnotationEntities()
public ResourceManage getResMgt()
资源管理器获取到的对象均为只读对象
public static void setNamespaceStrictMode(boolean enable)
启用严格模式后将会忽略非ofd命名空间的元素。
默认:关闭严格模式
enable - true - 启用; false - 兼容模式(默认),兼容ofd命名空间public void close()
throws IOException
删除工作区
close 在接口中 Closeableclose 在接口中 AutoCloseableIOException - 工作区删除异常Copyright © 2023. All rights reserved.