java生成pdf文件添加图片,Javapdf转图片

  java生成pdf文件添加图片,Javapdf转图片

  写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用

  出于某些需求需要将一张简单的图片转换为便携文档格式的文件格式,因此自己动手写了一个图片转换便携文档格式的系统,现在将该系统分享在这里,供大家参考。

  (学习视频推荐:java课程)

  具体代码:

  引入依赖:

  !-该项目以跳羚为基础搭建-

  父母

  groupIdorg.springframework.boot/groupId

  artifact id spring-boot-starter-parent/artifact id

  version2.0.4.RELEASE/version

  相对路径/

  /父母

  属国

  !- SpringMVC的依赖,方便我们可以获取前端传递过来的文件信息-

  属国

  groupIdorg.springframework.boot/groupId

  artifact id spring-boot-starter-web/artifact id

  /依赖关系

  !- ITextPdf,操作便携文档格式文件的工具类-

  属国

  groupIdcom.itextpdf/groupId

  artifactIditextpdf/artifactId

  版本5 .4 .2/版本

  /依赖关系

  /依赖关系前端页面:

  !声明文档类型

  超文本标记语言

  头

  meta charset=UTF-8

  标题图片转换pdf/标题

  风格。提交按钮{

  边距-顶部:20px

  左边距:150像素

  背景色:# e37e10

  边框半径:10px

  边框:1px纯色# ff8300

  }

  /风格

  /头

  身体

  div style=text-align: center

  氕图片转换可移植文档格式文件的扩展名(可移植文档格式的缩写)工具/h1

  form action=/pdf/image/to enctype= multipart/form-data method= post on submit= return allow file type()

  输入类型=文件id=文件名称=文件占位符=请选择图片onchange= allow file type() style= border:1px纯黑;英国铁路公司

  输入类型=提交值=一键转换可移植文档格式文件的扩展名(可移植文档格式的缩写)文件

  /表单

  /div

  /body

  脚本

  函数allowFileType() {

  让文件=文档。getelementbyid(“文件”).文件[0];

  让文件名=文件名

  console.log(文件名)

  设fileSize=file.size

  console.log(文件大小)

  让后缀=文件名。子字符串(文件名。lastindexof( . )),文件名。长度);

  如果(。jpg !=后缀。png!=后缀){

  警报(目前只允许传入。使用联合图象专家组文件交换格式存储的编码图像文件扩展名或者100 . png格式的图片!);

  返回错误的

  }

  如果(文件大小2*1024*1024) {

  警报(上传图片不允许超过2MB!);

  返回错误的

  }

  返回真实的

  }

  /脚本

  /html(推荐教程:java入门教程)

  控制层接口

  包com。HRP。控制器;

  导入com。HRP。util。pdfutils

  导入org。spring框架。刻板印象。控制器;

  导入org。spring框架。网络。绑定。注释。后期映射;

  导入org。spring框架。网络。绑定。注释。请求映射;

  导入org。spring框架。网络。绑定。注释。请求参数;

  导入org。spring框架。网络。多部分。多部分文件;

  导入javax。servlet。http。http servlet响应;

  /**

  * @描述:用于处理可移植文档格式文件的扩展名(可移植文档格式的缩写)相关的请求

  */

  @控制器

  @RequestMapping(pdf )

  公共类PdfController {

  @PostMapping(image/to )

  public void imageToPdf(@ request param( file )多部分文件文件,HttpServletResponse响应)引发异常{

  PdfUtils.imageToPdf(文件,响应);

  }

  }PDF工具类

  包com。HRP。util

  导入com。itext pdf。文字。文档;

  导入com。itext pdf。文字。文档异常;

  导入com。itext pdf。文字。形象;

  导入com。itext pdf。文字。页面大小;

  导入com。itext pdf。文字。pdf。pdf编写器;

  导入org。spring框架。刻板印象。组件;

  导入org。spring框架。网络。多部分。多部分文件;

  导入javax。servlet。http。http servlet响应;

  导入Java。io。*;

  导入Java。网。URL编码器;

  /**

  * @描述:pdf相关的工具类

  */

  @组件

  公共类PdfUtils {

  /**

  * 图片转换便携文档格式的公共接口

  *

  * @param file SpringMVC获取的图片文件

  * @ param response http servlet响应

  * @抛出IO异常IO异常

  * @次投掷文档异常便携文档格式文档异常

  */

  公共静态void imageToPdf(多文件文件,HttpServletResponse响应)引发IOException,DocumentException {

  File pdfFile=generatePdfFile(文件);

  downloadPdfFile(pdfFile,response);

  }

  /**

  * 将图片转换为便携文档格式文件

  *

  * @param file SpringMVC获取的图片文件

  * @返回便携文档格式文件

  * @抛出IO异常IO异常

  * @次投掷文档异常便携文档格式文档异常

  */

  私有静态文件生成文件(多文件文件)引发IOException,DocumentException {

  字符串fileName=file。getoriginalfilename();

  字符串pdf文件名=文件名。子字符串(0,fileName.lastIndexOf( . )))) . pdf ;

  文档文档=新文档(页面大小A4、20、20、20、20);

  PdfWriter.getInstance(doc,新文件输出流(pdf文件名));

  医生。open();

  医生。新页面();

  图像图像=图像。getinstance(文件。getbytes());

  浮动高度=图像。获取height();

  浮动宽度=图像。getwidth();

  int percent=getPercent(高度,宽度);

  image.setAlignment(Image .中间);

  image.scalePercent(百分比);

  doc.add(图片);

  医生。close();

  文件pdfFile=新文件(pdf文件名);

  返回pdf文件

  }

  /**

  *

  * 用于下载便携文档格式文件

  *

  * @param pdfFile PDF文件

  * @ param response http servlet响应

  * @抛出IO异常IO异常

  */

  私有静态void downloadPdfFile(文件PdfFile,HttpServletResponse响应)引发IOException {

  file inputstream fis=新文件inputstream(pdf文件);

  字节[]字节=新字节【fis。available()];

  fis.read(字节);

  fis。close();

  回应。reset();

  回应。设置标题(“内容类型”、“应用程序/pdf”);

  回应。设置标题(内容-处置,附件;filename= URL编码器。编码(pdf文件。getname(), UTF-8 );

  输出流out=响应。获取输出流();

  输出.写入(字节);

  出去。flush();

  出去。close();

  }

  /**

  * 等比压缩,获取压缩百分比

  *

  * @param高度图片的高度

  * @param权重图片的宽度

  * @返回压缩百分比

  */

  私有静态int getPercent(浮动高度,浮动重量){

  浮动百分比=0.0F

  如果(身高体重){

  百分比=页面大小100 . a4。getheight()/height * 100;

  }否则{

  百分比=页面大小100 . a4。getwidth()/weight * 100;

  }

  return Math.round(百分比);

  }

  }实现效果:

  以上就是利用爪哇岛实现一个图片转便携文档格式文件工具的详细内容,更多请关注我们其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • php读取pdf数据,php pdf读取
  • php读取pdf数据,php pdf读取,PHP中使用mpdf 导出PDF文件的实现方法
  • kotlon协程,深入理解kotlin协程pdf,一文彻底搞懂Kotlin中的协程
  • 深入解析C#(第4版),深入解析css pdf,深入解析contentWindow, contentDocument
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf,Java 反射机制原理与用法详解
  • ,,Java使用iTextPDF生成PDF文件的实现方法
  • ,,Python利用PyMuPDF实现PDF文件处理
  • 漫画算法小灰的算法之旅pdf,漫画算法2-小灰的算法进阶
  • devops和自动化运维实践 PDF,devops思想在运维方面的具体实践
  • pdf如何去除水印,pdf去水印的三种方法
  • 把a4的内容打印成a3小册子,a4的pdf文档如何打印成a3
  • nlp自然语言处理入门pdf,精通python自然语言处理 pdf
  • 容器docker基本操作,每天5分钟玩转docker容器技术 pdf
  • sklearn中文手册pdf下载,sklearn库模块及函数
  • 留言与评论(共有 条评论)
       
    验证码: