前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java实现批量图片生成PDF文件

Java实现批量图片生成PDF文件

作者头像
程序员云帆哥
发布于 2022-05-12 03:05:48
发布于 2022-05-12 03:05:48
1.2K00
代码可运行
举报
文章被收录于专栏:程序员云帆哥程序员云帆哥
运行总次数:0
代码可运行

Java实现批量图片生成PDF文件,这个也是比较常用到的。

需要引入一个包

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>${lastest.version}</version>
</dependency>

代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class PdfUtils {
    private static String FILEPATH = "E:\\pdf\\";

    /**
     * @param fileName   生成pdf文件
     * @param imagesPath 需要转换的图片路径的数组
     */
    public static void imagesToPdf(String fileName, String imagesPath) {
        try {
            fileName = FILEPATH + fileName + ".pdf";
            File file = new File(fileName);
            // 第一步:创建一个document对象。
            Document document = new Document();
            document.setMargins(0, 0, 0, 0);
            // 第二步:
            // 创建一个PdfWriter实例,
            PdfWriter.getInstance(document, new FileOutputStream(file));
            // 第三步:打开文档。
            document.open();
            // 第四步:在文档中增加图片。
            File files = new File(imagesPath);
            String[] images = files.list();
            int len = images.length;

            for (int i = 0; i < len; i++) {
                if (images[i].toLowerCase().endsWith(".bmp")
                        || images[i].toLowerCase().endsWith(".jpg")
                        || images[i].toLowerCase().endsWith(".jpeg")
                        || images[i].toLowerCase().endsWith(".gif")
                        || images[i].toLowerCase().endsWith(".png")) {
                    String temp = imagesPath + "\\" + images[i];
                    Image img = Image.getInstance(temp);
                    img.setAlignment(Image.ALIGN_CENTER);
                    img.scalePercent(100);
                    // 根据图片大小设置页面,一定要先设置页面,再newPage(),否则无效
                    document.setPageSize(new Rectangle(img.getWidth(), img.getHeight()));
                    document.newPage();
                    document.add(img);
                }
            }

            // 第五步:关闭文档。
            document.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        imagesToPdf("我的pdf文件", "E:\\tmp");
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
导出pdf文件时加图片水印
前言:本文探讨的是利用pageEvent事件在生成PDF文件的过程中把图片水印加好,这样导出的是加好水印的pdf文件。
全栈程序员站长
2022/08/26
1.5K0
导出pdf文件时加图片水印
Springboot输出PDF文件
有个人(死需求)跑过来跟你说,这些都给我输出成报告,pdf格式的,所以就有了下面这个,做一下笔记,以后有用直接过来拿。在网上找了一下,发现大家都是在用itext。iText是著名的开放项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
用户3467126
2019/09/27
3K2
Springboot输出PDF文件
iText5实现Java生成PDF文件完整版
最近项目中使用到Java实现导出PDF文件,经过一番参考研究最终决定使用itextpdf来实现,当然也可以参考 PDF Java类库:Spire.PDF for Java(https://www.e-iceblue.cn/spirepdfjava/create-pdf-in-java.html)。本文是使用第一种来实现的。
全栈程序员站长
2022/07/02
6.4K0
iText5实现Java生成PDF文件完整版
java(iText)工具包生成PDF
iText是一个非常著名的能够快速产生PDF文件的Java类库。支持文本,表格,图形的操作,可以方便的跟 Servlet 进行结合
王念博客
2019/07/25
10.4K1
Java组件生成PDF文件
最近和一位朋友聊自己微信小程序的事情,朋友的建议将小程序的文章给去掉,增加一个新的功能,他说我写的文章很鸡肋。自己听完之后内心及其犹豫,一方面自己也很清楚自己的文字的功底确实不行,写的技术文章没多少人看,但是一直想这个能锻炼出来。另一方面虽然文章没人看,但是文章的功能是自己一点一点写出来的,让我隐藏起来,我确实有点不想接受。
每天学Java
2020/06/02
4.9K0
SpringBoot + ITextPdf:高效生成 PDF 预览文件
其实公司之前的项目里是用到了帆软报表的,然而最近接了一个新项目,这个项目独立部署在甲方的独立环境中,组长的意思是不用再单独部署一套帆软报表,成本太大,用其他方式实现一下。虽然我不太理解成本大在哪儿,不过身为助理工程师,别管那么多,照着干就完事了。
程序员皮皮林
2024/10/08
1K0
SpringBoot + ITextPdf:高效生成 PDF 预览文件
怎么通过itextpdf架包实现报表导出为pdf文件?
程序猿川子
2024/08/01
870
怎么通过itextpdf架包实现报表导出为pdf文件?
Java 生成 PDF
欢迎关注公众号:程序员财富自由之路 某些业务场景下,需要提供相关的电子凭证,如银行回单,电子合同等。 需要生成对应的 PDF 提供给客户。 简单demo实现 添加依赖: <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.11</version> </dependency> 实现代码: import java.io
王小明_HIT
2019/08/13
2.1K0
从xls或xlsx文件转换为PDF文件的Java代码示例
本文介绍了如何使用Java代码将Excel文件转换为PDF文件,重点演示了如何使用iText库来实现这一功能。通过深入了解代码示例,您将能够轻松地将Excel文件转换为PDF,并且可以自定义字体、样式等。
默 语
2024/11/20
2620
文件系统(01):基于SpringBoot框架,管理Excel和PDF
Excel一款电子表格软件。直观的界面、出色的计算功能和图表工具,在系统开发中,经常用来把数据转存到Excel文件,或者Excel数据导入系统中,这就涉及数据转换问题。
知了一笑
2020/02/17
1.7K0
文件系统(01):基于SpringBoot框架,管理Excel和PDF
itextpdf生成表格的常见用法
在前面的文章介绍了itextpdf基本用法和使用itextpdf生成图片,itextpdf还可以实现很多功能,非常强大,今天主要介绍如何使用itextpdf生成表格式的pdf,在实际项目中也非常常用,首先举一个非常简单的例子,熟悉一下生成表格的基本步骤和流程:
全栈程序员站长
2022/07/02
2K0
itextpdf生成表格的常见用法
Java WebService如何生成PDF文件
在Web应用开发中,生成PDF文件是一项非常常见的需求。本文将介绍如何使用Java WebService来生成PDF文件。
用户10354340
2023/08/08
4140
在Spring Boot中使用iTextPDF创建动态PDF文档
最近,我们的系统新增了一个客服模块,其中一个重要功能是能够以PDF格式导出客服与用户之间的聊天记录。这些聊天记录包含文字、图片和文件等多种内容。为了实现这一功能,我们首先使用了itextpdf 5.x版本制作了一个Demo。今天,我将与家人们分享一下这项进展。
修己xj
2024/01/26
6810
在Spring Boot中使用iTextPDF创建动态PDF文档
使用itextpdf操作pdf
使用maven引入jar <dependency> <groupId>com.itextpdfgroupId> <artifactId>itextpdfartifactId> <version>5.2.0version> dependency> <dependency> <groupId>com.itextpdfgroupId> <artifactId>itext-asianartifactId> <version>5.2.0version> depende
allsmallpig
2021/02/12
1.2K0
SpringBoot集成itextpdf动态生成pdf并展示
接上文SpringBoot集成markdown实现文档管理,对于表格的支持markdown不是特别友好,同时内部文档管理需要增加表格式api接口文档的功能,所以决定采用结合数据库存储与动态生成pdf借助目录结构展示的方式
code2roc
2023/07/19
1.1K0
SpringBoot集成itextpdf动态生成pdf并展示
手把手教你使用Java开发在线生成pdf文档
在实际的业务开发的时候,研发人员往往会碰到很多这样的一些场景,需要提供相关的电子凭证信息给用户,例如网银/支付宝/微信购物支付的电子发票、订单的库存打印单、各种电子签署合同等等,以方便用户查看、打印或者下载。
Java极客技术
2022/12/02
2K0
手把手教你使用Java开发在线生成pdf文档
iText的使用
首先要getInstance并open一个Document对象,该对象也就代表了这个文件:
LeoXu
2018/08/15
2.4K0
flying-saucer + iText + Freemarker实现pdf的导出, 支持中文、css以及图片
      项目中有个需求,需要将合同内容导出成pdf。上网查阅到了 iText , iText 是一个生成PDF文档的开源Java库,能够动态的从XML或者数据库生成PDF,同时还可以对文档进行加密,权限控制,并且还支持Java/C#等,但是iText本身提供的HTML解析器还是不够强大,许多HTML标签和属性无法识别,更悲催的是简单的CSS它不认识,排版调整样式让人头大。那么有没有什么方式能够支持css呢,又查阅到了 flying-saucer, flying-saucer也是导出PDF的一种解决方案,并且是基于iText的开源API,并且实现了CSS解析器,能够很好的支持CSS2.1,以及少量的CSS。最终解决方案定为: flying-saucer + iText +  Freemarker。
青石路
2018/09/10
3.3K0
flying-saucer + iText +  Freemarker实现pdf的导出, 支持中文、css以及图片
【iText5 生成PDF】纯Java代码实现生成PDF(自定义表格、文本水印、单元格样式)
​ 工作中遇到需要生成PDF。最终选择了iText。其他也有通过html再生成。感觉不太适合就用了代码实现。 使用iText 5.5.13.1版本。纯Java代码实现 1.自定义表格合并指定行列
小帅丶
2019/07/22
8.8K0
【iText5 生成PDF】纯Java代码实现生成PDF(自定义表格、文本水印、单元格样式)
itextpdf设置页码_word页码相同怎么改
项目需要样式比较复杂,刚开始因为时间比较紧所以采用了Itextpdf插件代码生成pdf ,实话说过程十分繁琐,因为pdf文件样式比较多,表格也比较多,各种的表格,还有就是页眉页脚页码都要自己找页面位置坐标但是又不能像html那样方便更改查看样式,只能改一点导出来看看合适不,然后再改再导出来看。 私下调研了很多,现在罗列一下我所用到的一些样式处理,希望可以帮助需要做这个功能的朋友少踩坑,少尝试,直接出完美pdf报告。
全栈程序员站长
2022/11/14
3.9K0
itextpdf设置页码_word页码相同怎么改
相关推荐
导出pdf文件时加图片水印
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验