java合并pdf 追加页数_使用IText API将页码添加到具有不同页面大小的合并PDF
我正在尝试使用页面右上角的Itext添加页码以合并PDF文件,但我的pdf内容大小不同,在尝试打印页面大小后合并PDF时我得到大致相同的大小(高度和宽度) )在每个页面上,但由于内容大小不同,我无法看到页码 . 请参阅下面的代码和pdf附件,用于合并PDF和添加页码 .
public class PageNumber {
public static void main(String[] args) {
PageNumber number = new PageNumber();
try {
String DOC_ONE_PATH = "C:/Users/Admin/Downloads/codedetailsforartwork/elebill.pdf";
String DOC_TWO_PATH = "C:/Users/Admin/Downloads/codedetailsforartwork/PP-P0109916.pdf";
String DOC_THREE_PATH = "C:/Users/Admin/Downloads/codedetailsforartwork/result.pdf";
String[] files = { DOC_ONE_PATH, DOC_TWO_PATH };
Document document = new Document();
PdfCopy copy = new PdfCopy(document, new FileOutputStream(DOC_THREE_PATH));
document.open();
PdfReader reader;
int n;
for (int i = 0; i < files.length; i++) {
reader = new PdfReader(files[i]);
n = reader.getNumberOfPages();
for (int page = 0; page < n; ) {
copy.addPage(copy.getImportedPage(reader, ++page));
}
copy.freeReader(reader);
reader.close();
}
// step 5
document.close();
number.manipulatePdf(
"C:/Users/Admin/Downloads/codedetailsforartwork/result.pdf",
"C:/Users/Admin/Downloads/codedetailsforartwork/PP-P0109916_1.pdf");
} catch (IOException | DocumentException | APIException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void manipulatePdf(String src, String dest)
throws IOException, DocumentException, APIException {
PdfReader reader = new PdfReader(src);
int n = reader.getNumberOfPages();
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
PdfContentByte pagecontent;
for (int i = 0; i < n;) {
pagecontent = stamper.getOverContent(++i);
System.out.println(i);
com.itextpdf.text.Rectangle pageSize = reader.getPageSize(i);
pageSize.normalize();
float height = pageSize.getHeight();
float width = pageSize.getWidth();
System.out.println(width + " " + height);
ColumnText.showTextAligned(pagecontent, Element.ALIGN_CENTER,
new Phrase(String.format("page %d of %d", i, n)),
width - 200, height-85, 0);
}
stamper.close();
reader.close();
}
}
java合并pdf 追加页数_使用IText API将页码添加到具有不同页面大小的合并PDF相关推荐
- java 获取pdf总页数_如何获取PDF文件的总页数 - iTextSharp,c#
我需要帮助.我花了最后4个小时试图获得我的PDF文件的总页数.我希望在页脚中有"Page X/Y"之类的内容.有人可以告诉我该怎么做这个代码?如何获取PDF文件的总页数 - iTe ...
- python获取word页数_用程序获取word页码方法汇总
## 背景说明 最近参与了一个档案管理系统,使用java开发,部署在centos,其中的一个功能需要获取到word文件准确的页码,现在将尝试过的方法汇总如下: Apache POI 由于系统是jav ...
- Java获取文档页数_获取PDF文档中的页数
一个简单的命令行可执行文件,名为:pdfinfo . 这是downloadable for Linux and Windows . 您下载包含几个与PDF相关的小程序的压缩文件 . 在某处提取它 . ...
- PHP fpdi合并多个PDF文件,取多个PDF特定页数合并以及导出
在说之前,先说明一下,FPDI 插件,不能操作被 pdf 软件编辑过的 pdf 文件. 在我们写项目的时候,经常需要对PDF文件进行操作.例如:合并多个PDF文件,取PDF特定页数以及合并. PHP ...
- Java准确获取Word/Excel/PPT/PDF的页数(附Word页数读不准的处理办法)
Java准确获取Word/Excel/PPT/PDF的页数(附Word页数读不准的处理办法) 1.需求背景 2.环境准备工作 2.1 JACOB介绍及安装 2.2 Microsoft Office W ...
- java获取pdf的页数、内容和缩略图
1.导入maven依赖 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfb ...
- Python 实现office单个文件或整个文件夹(word,ppt,excel)转换成PDF文件,并获取PDF文件页数
Python 实现office单个文件或整个文件夹(word,ppt,excel)转换成PDF文件,并获取PDF文件页数 文件夹中获取需要转换的文件数,将其全部转换或可单独转换单个文件,并获取转成PD ...
- Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹
Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹 目录 实现步骤和结果 核心代码 实现步骤和结果 ...
- php获取pdf文件页数,PHP简单读取PDF页数的实现方法
搜索热词 本文实例讲述了PHP简单读取PDF页数的实现方法.分享给大家供大家参考,具体如下: 还是老外比较厚道,在老外的网站找到了这样一个方法, 我写成了一个函数,再将函数写进自己的LeeLib库里的 ...
- C#编写ASP.NET Core的Web API并部署到IIS上的详细教程(API用于准确获取Word/Excel/PPT/PDF的页数)6 -将项目部署到IIS,及常见错误解决方案
C#编写ASP.NET Core的Web API并部署到IIS上的详细教程(API用于准确获取Word/Excel/PPT/PDF的页数)6 -将项目部署到IIS,及常见错误解决方案 1.前言 2.安 ...
最新文章
- Hadoop详解(一):Hadoop简介
- WildFly 9 –别希望您的控制台像这样!
- sp烘焙流程_次世代86机甲战神制作全流程
- python网络编程3-socketserver模块
- MySQL(21)--- GROUP BY 语句
- 详解由VS 2010生成的Bug报告(2) - 报告的内容
- qemu模拟器下编译运行基于riscv指令集的Linux操作系统
- 图像取证:由色差发现数字篡改痕迹
- 推荐两个适合代码的字体
- 京东程序员压力太大在网页植入骂人代码?网友:。。。
- 破解Excel工作表密码
- java设计随机遇敌概率_Java随机产生中文昵称
- 汽车维修店如何挖掘潜在客户资源
- Linux之ssh免密登录
- 还在找免费的能提供HTTPS协议外链的图床?这个开源插件轻松完成
- Android项目gen目下没有R.class文件 解决方法
- deepin、UOS应用软件标题栏大额头问题解决
- 什么叫涨停板出货?涨停板出货有什么特征?
- 读刘未鹏《暗时间》有感
- 安装cuda+cuDNN
热门文章
- ubuntu默认播放器缺少解码器
- Reading Note(3)——基于FPGA的动态可重构特性探索新型加速器架构
- 给一个函数求导MATLAB,matlab求导
- UE4实时渲染需要注意的点——RTR(Real Time Rendering)
- 计算机软件研究方法与技术路线,毕业论文研究方法与技术路线
- linux 下bt远程下载,在Linux服务器上配置Transmission来离线下载BT种子
- fileupload控件的属性_FileUpload控件的配置 .
- Perl教程-1.Perl简介
- MATLAB视频与图片之间的相互转换
- 怎么查看计算机硬盘sn,硬盘序列号,教您怎么查看硬盘序列号