itextPdf~将PDF页面大小转为A4格式

您所在的位置:网站首页 pdfa3版面转换两页a4页码可以按照顺序吗 itextPdf~将PDF页面大小转为A4格式

itextPdf~将PDF页面大小转为A4格式

#itextPdf~将PDF页面大小转为A4格式| 来源: 网络整理| 查看: 265

本文章向大家介绍将PDF页面大小转为A4格式---itextPdf实现,主要包括将PDF页面大小转为A4格式---itextPdf实现使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

将PDF页面大小转为A4格式(itextPdf实现)

1. 引入相关jar包

com.itextpdf itextpdf 5.5.13.2

2. 实现代码

package com.fan.study.common.util; import com.itextpdf.text.Document; import com.itextpdf.text.PageSize; import com.itextpdf.text.pdf.PdfContentByte; import com.itextpdf.text.pdf.PdfImportedPage; import com.itextpdf.text.pdf.PdfReader; import com.itextpdf.text.pdf.PdfWriter; import java.awt.geom.AffineTransform; import java.io.FileOutputStream; public class PdfConvertA4Utils { /** * @Param source 源文件 * @Param target 转换后文件 * @Description 将PDF转为A4格式 * @Date: 2021/4/25 **/ private static void convert(String source, String target) { try { PdfReader pdfReader = new PdfReader(source); Document doc = new Document(); PdfWriter writer = PdfWriter.getInstance(doc, new FileOutputStream(target)); doc.open(); PdfContentByte cb = writer.getDirectContent(); for(int i = 1; i width) { //横向 doc.setPageSize(PageSize.A4); doc.newPage(); //计算比例 float widthScale = getWidthScale(width); float heightScale = getHeightScale(height); //addTemplate方法中有6个float类型的参数,是通过二维图像仿射变换得到的 //cb.addTemplate(page, new AffineTransform(widthScale, 0, 0, heightScale,0,0)); //二维图像仿射变换:https://www.cnblogs.com/v2m_/archive/2013/05/09/3070187.html cb.addTemplate(page, widthScale, 0, 0, heightScale,0,0); } else { //纵向 doc.setPageSize(new com.itextpdf.text.Rectangle(PageSize.A4.getHeight(), PageSize.A4.getWidth())); doc.newPage(); float widthScale = getWidthScale(height); float heightScale = getHeightScale(width); cb.addTemplate(page, widthScale, 0, 0, heightScale,0,0); } } doc.close(); } catch (Exception ex) { ex.printStackTrace(); } } private static float getWidthScale(float width) { float scale = PageSize.A4.getWidth() / width; return scale; } private static float getHeightScale(float height) { float scale = PageSize.A4.getHeight() / height; return scale; } }



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3