pdf工具类之获取pdf的总页数以及每页的宽度和高度
没啥可说的,毫无技术的水贴
1 /**
2 * 获取pdf的总页数以及每页的宽度和高度
3 *
4 * @param filePath
5 * @return Map<String, List<Map<String, String>>>
6 * @author 龙谷情
7 * @date 2020/6/25 19:47
8 * @exception/throws [异常类型] [异常说明]
9 * @since [v1.0]
10 */
11 public static Map<String, List<Map<String, String>>> getPageNumByPath(String filePath) {
12 Map resultMap = new HashMap(16);
13 List<Map<String, String>> pageList = new ArrayList<>();
14 int totalPages = 0;
15 FileInputStream inputStream = null;
16 PdfReader pdfReader = null;
17 try {
18 File file = new File(filePath);
19 inputStream = new FileInputStream(file);
20 pdfReader = new PdfReader(inputStream);
21 totalPages = pdfReader.getNumberOfPages();
22 for (int pageNum = 1; pageNum <= totalPages; pageNum++) {
23 Map<String, String> pageMap = new HashMap<>(16);
24 float width = pdfReader.getPageSize(pageNum).getWidth();
25 float height = pdfReader.getPageSize(pageNum).getHeight();
26 pageMap.put("pageNum", String.valueOf(pageNum));
27 pageMap.put("width", String.valueOf(width));
28 pageMap.put("height", String.valueOf(height));
29 pageList.add(pageMap);
30 }
31 resultMap.put("totalPages", totalPages);
32 resultMap.put("pageList", pageList);
33 } catch (FileNotFoundException e) {
34 e.printStackTrace();
35 } catch (IOException e) {
36 e.printStackTrace();
37 } finally {
38 if (null != inputStream) {
39 try {
40 inputStream.close();
41 } catch (IOException e) {
42 e.printStackTrace();
43 }
44 }
45 if (null != pdfReader) {
46 pdfReader.close();
47 }
48 }
49 return resultMap;
50 }
pdf工具类之获取pdf的总页数以及每页的宽度和高度的更多相关文章
- Java 借助poi操作PDF工具类
一直以来说写一个关于Java操作PDF的工具类,也没有时间去写,今天抽空写一个简单的工具类,拥有PDF中 换行,字体大小,字体设置,字体颜色,首行缩进,居中,居左,居右,增加新一页等功能,如果需要 ...
- 使用scanner工具类来获取用户输入的信息
使用scanner工具类来获取用户输入的成绩信息. 步骤:1.导入java.util.Scanner包 2.创建Scanner对象 3.接受并保存用户输入的值 例子:通过用户输入来获取学生成绩 pac ...
- java Http消息传递之POST和GET两种方法--通过实用工具类来获取服务器资源
实现该方法需要导入一些jar包 可以去一下地址下载: http://pan.baidu.com/s/1hqrJF7m /** * 实用工具类来获取服务器资源 * * get方法传送数据 * * 1.通 ...
- Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP
Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP IP 工具类 源代码: /** * <p> * * @author XiaoPengwei ...
- java img图片转pdf 工具类
package com.elitel.hljhr.comm.web.main.controller; import java.io.File; import java.io.FileNotFoundE ...
- 关于通过spring-web的ServletRequestUtils工具类对获取getParameter传参的默认转换基本数据类型的学习
基于spring-web(4.1.4)包的org.springframework.web.bind.ServletRequestUtils工具类对HttpServletRequest获取的传递入参获取 ...
- 时间日期转换工具类,获取当前时间YYYYMMDD24HHMISS、YYYYMMDDHHMISS
YYYYMMDD24HHMISS:24小时制时间(显示上只是比YYYYMMDDHHMISS中间多了一个24),例:2018102224112440 YYYYMMDDHHMISS:12小时制时间,例20 ...
- 时间工具类之"获取相差天数"
一.时间工具类DateUtils之"获取相差天数" 1 /** 2 * 相差天数 3 * 4 * <p>TODO 方法功能描述 5 * 6 * @param start ...
- Java工具类(获取当前主机操作系统名)
package com.fly.jenkins.util; /** * 操作系统类: 获取System.getProperty("os.name")对应的操作系统 * * @aut ...
- Cookie工具类(获取cookie,设置cookie)
import java.io.UnsupportedEncodingException; import java.net.URLDecoder;import java.net.URLEncoder; ...
随机推荐
- 探秘Transformer系列之(23)--- 长度外推
探秘Transformer系列之(23)--- 长度外推 目录 探秘Transformer系列之(23)--- 长度外推 0x00 概述 0x01 背景 1.1 问题 1.2 解决思路 1.3 微调的 ...
- 通过TTS模型让猴哥给你讲个故事
"假"标题:通过TTS模型让猴哥给你讲个故事 "真"标题:使用Python调用硅基流动TTS模型并播放返回的音频数据过程记录 TTS介绍 TTS(Text-to ...
- H5 ios端微信浏览器下-底部工具固定方法
在外层配置css position: fixed; width: 100%; top: 0px; bottom: 0px; overflow: auto; 结束
- jmeter使用之数据关联
- Nacos简介—2.Nacos的原理简介
大纲 1.Nacos集群模式的数据写入存储与读取问题 2.基于Distro协议在启动后的运行规则 3.基于Distro协议在处理服务实例注册时的写路由 4.由于写路由造成的数据分片以及随机读问题 5. ...
- .net core项目代码提交忽略文件.gitignore的配置
根据语言自动生成 1. 访问 .gitignore.io 首先,访问 https://www.gitignore.io/.这是一个非常有用的网站,可以根据你的开发环境自动生成 .gitignore 文 ...
- Java查找一个字符串在另一个字符串中出现的次数
主要是练习String类中indexOf的用法 /** * 查找一个字符串在另一个字符串中出现的次数 */ public class MainTest { public static void mai ...
- 【ROS】5.1 ARP攻击Turtlebot3汉堡Burger并解析移动报文
原视频 ARP攻击 实验环境推荐:Linux虚拟机×2:Ubuntu 20.04或18.04或kali,被攻击机安装好ROS: 提升能力环境推荐:不同真机下的Linux虚拟机×2:Ubuntu 20. ...
- 参考用例之“本地Excel导入系统测试方案”
本地Excel导入系统测试方案 Excel 代码 @Test public void importperson() throws FileNotFoundException { FileInputSt ...
- 1Panel + MaxKB 对接高德地图 MCP Server
一.场景说明: 通过 1Panel+MaxKB 两个开源工具实现高德地图(Amap) MCP 服务调用. 二.操作说明 步骤一:完成 1Panel 的安装部署 安装说明:在线安装 - 1Panel 文 ...