public class Document extends AbstractBase implements Closeable
Copyright (c) 2020 xsx All Rights Reserved. x-easypdf-pdfbox is licensed under Mulan PSL v2. You can use this software according to the terms and conditions of the Mulan PSL v2. You may obtain a copy of Mulan PSL v2 at: http://license.coscl.org.cn/MulanPSL2 THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. See the Mulan PSL v2 for more details.
Modifier and Type | Field and Description |
---|---|
protected org.apache.pdfbox.pdmodel.encryption.AccessPermission |
accessPermission
pdf访问权限
|
protected Color |
backgroundColor
背景颜色
|
protected FontConfiguration |
fontConfiguration
字体配置
|
protected Boolean |
isFlushMetadata
是否刷新元数据
|
protected MarginConfiguration |
marginConfiguration
边框配置
|
protected List<Page> |
pages
页面列表
|
protected PDDocument |
target
任务文档
|
protected Integer |
totalPageNumber
总页码
|
protected Float |
version
文档版本
|
contentMode, context, isResetContentStream, log
Constructor and Description |
---|
Document()
无参构造
|
Document(byte[] bytes,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
有参构造
|
Document(File file,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
有参构造
|
Document(InputStream inputStream,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
有参构造
|
Document(MemoryPolicy policy)
有参构造
|
Modifier and Type | Method and Description |
---|---|
void |
appendPage(List<Page> pages)
追加页面
|
void |
appendPage(Page... pages)
追加页面
|
void |
close()
关闭文档
|
void |
decrypt()
解密
|
void |
encryption()
加密(标准)
|
void |
encryption(boolean preferAES,
PWLength length,
String ownerPassword,
String userPassword)
加密(标准)
|
void |
encryption(InputStream certificateInputStream)
加密(公钥)
|
List<CatalogInfo> |
getCatalogs()
获取目录列表
|
Float |
getCharacterSpacing()
获取字符间距
|
Page |
getCurrentPage()
获取当前页面
|
PDFont |
getFont()
获取字体
|
Float |
getFontAlpha()
获取字体透明度
|
Color |
getFontColor()
获取字体颜色
|
String |
getFontName()
获取字体名称
|
Float |
getFontSize()
获取字体大小
|
Float |
getFontSlope()
获取字体斜率
|
FontStyle |
getFontStyle()
获取字体样式
|
Float |
getLeading()
获取行间距
|
Float |
getMarginBottom()
获取下边距
|
Float |
getMarginLeft()
获取左边距
|
Float |
getMarginRight()
获取右边距
|
Float |
getMarginTop()
获取上边距
|
Page |
getPage(int index)
获取指定页面
|
List<String> |
getSpecialFontNames()
获取特殊字体名称
|
Color |
getStrokColor()
获取字体描边颜色
|
int |
getTotalPageNumber()
获取总页数
|
protected void |
init()
初始化
|
protected void |
init(byte[] bytes,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
初始化
|
protected void |
init(File file,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
初始化
|
protected void |
init(InputStream inputStream,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
初始化
|
protected void |
init(MemoryPolicy policy)
初始化
|
void |
initBase()
初始化基础
|
protected void |
initLoad()
初始化加载
|
protected void |
initLoad(org.apache.pdfbox.io.RandomAccessReadBuffer buffer,
String password,
InputStream keyStore,
String alias,
MemoryPolicy policy)
初始化
|
protected void |
initOtherParams()
初始化其他参数
|
protected void |
initPages()
初始化页面列表
|
void |
insertPage(int index,
Page page)
插入页面
|
void |
save(File file)
保存文档
|
void |
save(OutputStream outputStream)
保存文档
|
void |
save(String path)
保存文档
|
void |
saveAndClose(File file)
保存关闭文档
|
void |
saveAndClose(OutputStream outputStream)
保存关闭文档
|
void |
saveAndClose(String path)
保存关闭文档
|
void |
setCharacterSpacing(float spacing)
设置字符间距
|
void |
setFontAlpha(float alpha)
设置字体透明度
|
void |
setFontColor(Color color)
设置字体颜色
|
void |
setFontName(String fontName)
设置字体名称
|
void |
setFontSize(float size)
设置字体大小
|
void |
setFontSlope(float slope)
设置字体斜率(斜体字)
|
void |
setFontStyle(FontStyle style)
设置字体样式
|
void |
setIsFlushMetadata(boolean isFlushMetadata)
设置是否刷新元数据
|
void |
setLeading(float leading)
设置行间距
|
void |
setMargin(float margin)
设置边距(上下左右)
|
void |
setMarginBottom(float margin)
设置下边距
|
void |
setMarginLeft(float margin)
设置左边距
|
void |
setMarginRight(float margin)
设置右边距
|
void |
setMarginTop(float margin)
设置上边距
|
void |
setPage(int index,
Page page)
设置页面(替换)
|
void |
setResourceCache(org.apache.pdfbox.pdmodel.ResourceCache cache)
设置缓存
|
void |
setSpecialFontNames(String... fontNames)
设置特殊字体名称
|
void |
setStrokColor(Color color)
设置字体描边颜色
|
void |
setTextHandler(AbstractTextHandler handler)
设置文本助手
|
void |
setVersion(float version)
设置版本
|
init, init
protected MarginConfiguration marginConfiguration
protected FontConfiguration fontConfiguration
protected Color backgroundColor
protected PDDocument target
protected org.apache.pdfbox.pdmodel.encryption.AccessPermission accessPermission
protected Float version
protected Integer totalPageNumber
protected Boolean isFlushMetadata
public Document()
public Document(MemoryPolicy policy)
policy
- 内存策略public Document(File file, String password, InputStream keyStore, String alias, MemoryPolicy policy)
file
- 文件password
- 文件密码keyStore
- 证书输入流alias
- 证书别名policy
- 内存策略public Document(byte[] bytes, String password, InputStream keyStore, String alias, MemoryPolicy policy)
bytes
- 字节数组password
- 文件密码keyStore
- 证书输入流alias
- 证书别名policy
- 内存策略public Document(InputStream inputStream, String password, InputStream keyStore, String alias, MemoryPolicy policy)
inputStream
- 文件输入流password
- 文件密码keyStore
- 证书输入流alias
- 证书别名policy
- 内存策略public void setVersion(float version)
version
- 版本public void setResourceCache(org.apache.pdfbox.pdmodel.ResourceCache cache)
cache
- 缓存public void setIsFlushMetadata(boolean isFlushMetadata)
isFlushMetadata
- 是否刷新元数据public void setMargin(float margin)
margin
- 边距public void setTextHandler(AbstractTextHandler handler)
handler
- 助手public PDFont getFont()
public Float getMarginTop()
public void setMarginTop(float margin)
margin
- 边距public Float getMarginBottom()
public void setMarginBottom(float margin)
margin
- 边距public Float getMarginLeft()
public void setMarginLeft(float margin)
margin
- 边距public Float getMarginRight()
public void setMarginRight(float margin)
margin
- 边距public String getFontName()
public void setFontName(String fontName)
fontName
- 字体名称public void setSpecialFontNames(String... fontNames)
fontNames
- 字体名称public Float getFontSize()
public void setFontSize(float size)
size
- 大小public Color getFontColor()
public void setFontColor(Color color)
color
- 颜色public Color getStrokColor()
public void setStrokColor(Color color)
color
- 颜色public Float getFontAlpha()
public void setFontAlpha(float alpha)
alpha
- 透明度public FontStyle getFontStyle()
public void setFontStyle(FontStyle style)
style
- 样式public Float getFontSlope()
public void setFontSlope(float slope)
slope
- 斜率public Float getCharacterSpacing()
public void setCharacterSpacing(float spacing)
spacing
- 间距public Float getLeading()
public void setLeading(float leading)
leading
- 行间距public int getTotalPageNumber()
public Page getCurrentPage()
public Page getPage(int index)
index
- 页面索引public List<CatalogInfo> getCatalogs()
public void encryption()
public void encryption(boolean preferAES, PWLength length, String ownerPassword, String userPassword)
preferAES
- AES加密(密码长度为128位时生效)length
- 密码长度(40位,128位,256位)ownerPassword
- 拥有者密码userPassword
- 用户密码public void encryption(InputStream certificateInputStream)
注:仅支持"X.509"
certificateInputStream
- 公钥证书数据流public void decrypt()
注:需读取文档时,传入密码
public void insertPage(int index, Page page)
index
- 页面索引page
- 页面public void appendPage(Page... pages)
pages
- 页面public void setPage(int index, Page page)
index
- 页面索引page
- 页面public void save(File file)
file
- 文件public void saveAndClose(File file)
file
- 文件public void save(String path)
path
- 路径public void saveAndClose(String path)
path
- 路径public void save(OutputStream outputStream)
outputStream
- 输出流public void saveAndClose(OutputStream outputStream)
outputStream
- 输出流public void close()
close
in interface Closeable
close
in interface AutoCloseable
public void initBase()
protected void init()
protected void init(MemoryPolicy policy)
protected void init(File file, String password, InputStream keyStore, String alias, MemoryPolicy policy)
file
- 文件password
- 密码keyStore
- 证书alias
- 证书别名policy
- 内存策略protected void init(byte[] bytes, String password, InputStream keyStore, String alias, MemoryPolicy policy)
bytes
- 字节数组password
- 密码keyStore
- 证书alias
- 证书别名policy
- 内存策略protected void init(InputStream inputStream, String password, InputStream keyStore, String alias, MemoryPolicy policy)
inputStream
- 输入流password
- 密码keyStore
- 证书alias
- 证书别名policy
- 内存策略protected void initLoad(org.apache.pdfbox.io.RandomAccessReadBuffer buffer, String password, InputStream keyStore, String alias, MemoryPolicy policy)
buffer
- 访问缓冲password
- 密码keyStore
- 证书alias
- 证书别名policy
- 内存策略protected void initLoad()
protected void initPages()
protected void initOtherParams()
Copyright © 2024. All rights reserved.