当前位置: 首页 > news >正文

静态网站建设摘要竞价开户推广

静态网站建设摘要,竞价开户推广,最简单网站设计的代码,电商企业网站建设方案不是单页图片,是多页PDF转成一张图片的逻辑。 我这里的场景是PDF转成图片之后返回给前端,前端再在图片上实现签字,并且可拖拽的逻辑,就是签订合同的场景。 但是这里只写后端多页PDF转图片的逻辑。 先说逻辑,后面直接…

不是单页图片,是多页PDF转成一张图片的逻辑。

我这里的场景是PDF转成图片之后返回给前端,前端再在图片上实现签字,并且可拖拽的逻辑,就是签订合同的场景。

但是这里只写后端多页PDF转图片的逻辑。

先说逻辑,后面直接上代码,大致分为以下几步:

  1. 读取PDF文件(我的代码里是将在线的URL转成InputStream了)
  2. 按PDF的页面循环计算图片的宽度和高度,其中宽度为PDF最宽的那一页的宽度(毕竟有的PDF比较骚,可能一页是横的,一页是竖的),高度为所有页面加起来的高度
  3. 用Graphics2D绘制
  4. 将Graphics2D的绘制结果输出为图片(只要有outputStream都好说,我这里是输出成base64给前端了,没什么存起来的必要)

好了,直接上代码:

先在pom.xml导入依赖:

		<!--   pdf读取     --><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.1</version></dependency><dependency><groupId>org.apache.pdfbox</groupId><artifactId>fontbox</artifactId><version>2.0.1</version></dependency>
	public String getSinglePicBase64Contracts(String fileUrl) throws IOException {byte[] pdfBytes = HttpUtil.createGet(fileUrl).execute().bodyBytes();InputStream inputStream = new ByteArrayInputStream(pdfBytes);PDDocument doc = PDDocument.load(inputStream);PDFRenderer pdfRenderer = new PDFRenderer(doc);List<BufferedImage> imageList = new ArrayList<>(doc.getNumberOfPages());int maxWidth = 0;int totalHeight = 0;for (int i = 0; i < doc.getNumberOfPages(); i++) {BufferedImage image = pdfRenderer.renderImage(i, 1.25f);imageList.add(image);if (image.getWidth() > maxWidth) {maxWidth = image.getWidth();}totalHeight += image.getHeight();}// 绘制结果BufferedImage result = new BufferedImage(maxWidth, totalHeight, BufferedImage.TYPE_INT_RGB);Graphics2D g2d = result.createGraphics();int nowHeight = 0;for (BufferedImage bufferedImage : imageList) {// padding 为页面的左边距int padding = (maxWidth - bufferedImage.getWidth()) / 2;g2d.drawImage(bufferedImage, padding, nowHeight, null);nowHeight += bufferedImage.getHeight();}ByteArrayOutputStream outputStream =  new ByteArrayOutputStream();ImageIO.write(result, "png", outputStream);String singlePicBase64 = "data:image/png;base64," + Base64.encodeBase64String(outputStream.toByteArray());return singlePicBase64;}
http://www.hkea.cn/news/88785/

相关文章:

  • discuz做电影网站免费网站seo
  • 惠民建设局网站明年2024年有疫情吗
  • 卫龙的网站是谁做的今日的新闻
  • 厚街找人做网站动态网站设计
  • 永春县住房和城乡规划建设局网站太原seo排名优化软件
  • 怎么上网站后台爱站小工具计算器
  • 网页编辑岗位职责seo上海优化
  • 网站做二维码吗做网站的外包公司
  • 郑州市中原区疫情最新消息上海网站营销seo方案
  • 狂人站群系统中国最权威的网站排名
  • 简单网站开发实例网站运营工作的基本内容
  • 飞机免费代理ip爱站网seo综合查询工具
  • 河南焦作有做网站开发的公司吗巩义网络推广公司
  • 邓州做网站网络广告有哪些形式
  • 爬闪数媒 网站建设网站建站流程
  • 网站建设广州白云百度统计app下载
  • 惠州短视频seoseowhy论坛
  • 肇庆网站快速排名优化温州seo排名公司
  • 北京疫情死亡人数最新消息王通seo赚钱培训
  • 北京做网站的外包公司营销策划方案案例范文
  • 专业做酒店网站关键词优化排名软件流量词
  • 做网站推广代理上海网络推广服务
  • wordpress可以做大吗搜索引擎优化的英语简称
  • 民治专业做网站公司中国企业500强排行榜
  • 潍坊 公司 网站seo点击排名器
  • 网站可以做赌博广告建站宝盒
  • 运城市做网站英文seo外链
  • 江宁网站建设如何建立网上销售平台
  • 淄博企业网站建设有限公司搜索引擎关键词竞价排名
  • 网站的优点企业专业搜索引擎优化