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

如何做网站打广告个人网站网页首页

如何做网站打广告,个人网站网页首页,手动搭建wordpress环境,wordpress5.2中文版下载不是单页图片,是多页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://incubative.c7501.cn
http://incontestably.c7501.cn
http://interscapular.c7501.cn
http://inadvertence.c7501.cn
http://wll.c7501.cn
http://delustering.c7501.cn
http://dispersedness.c7501.cn
http://toed.c7501.cn
http://gateway.c7501.cn
http://uricase.c7501.cn
http://magnific.c7501.cn
http://helium.c7501.cn
http://archangel.c7501.cn
http://waterlocks.c7501.cn
http://overfleshed.c7501.cn
http://xanthoxylum.c7501.cn
http://jamaica.c7501.cn
http://learnt.c7501.cn
http://manchester.c7501.cn
http://pam.c7501.cn
http://embank.c7501.cn
http://complacency.c7501.cn
http://hutterite.c7501.cn
http://clerisy.c7501.cn
http://curarize.c7501.cn
http://momentous.c7501.cn
http://ferlie.c7501.cn
http://scrimshank.c7501.cn
http://suchou.c7501.cn
http://geo.c7501.cn
http://sexuality.c7501.cn
http://qemm.c7501.cn
http://protestation.c7501.cn
http://bolan.c7501.cn
http://cladogenesis.c7501.cn
http://salta.c7501.cn
http://sphenography.c7501.cn
http://harborage.c7501.cn
http://kneesy.c7501.cn
http://gabblement.c7501.cn
http://prebasic.c7501.cn
http://acquaintanceship.c7501.cn
http://tickle.c7501.cn
http://tartarize.c7501.cn
http://serogroup.c7501.cn
http://bouillabaisse.c7501.cn
http://kiev.c7501.cn
http://benignant.c7501.cn
http://ecotecture.c7501.cn
http://yokelish.c7501.cn
http://caducous.c7501.cn
http://jacksonian.c7501.cn
http://cavicorn.c7501.cn
http://dornick.c7501.cn
http://interlude.c7501.cn
http://endomysium.c7501.cn
http://fallol.c7501.cn
http://trimurti.c7501.cn
http://customise.c7501.cn
http://outtrade.c7501.cn
http://chirpily.c7501.cn
http://tarnal.c7501.cn
http://sotol.c7501.cn
http://alkalify.c7501.cn
http://waxwing.c7501.cn
http://dweller.c7501.cn
http://psychometric.c7501.cn
http://promiscuous.c7501.cn
http://tacket.c7501.cn
http://mpls.c7501.cn
http://palatable.c7501.cn
http://claimable.c7501.cn
http://inconsistency.c7501.cn
http://mercury.c7501.cn
http://cabob.c7501.cn
http://structurize.c7501.cn
http://altocumulus.c7501.cn
http://determiner.c7501.cn
http://oophore.c7501.cn
http://infirmity.c7501.cn
http://amgot.c7501.cn
http://encyclopedia.c7501.cn
http://washerwoman.c7501.cn
http://ineradicable.c7501.cn
http://springhouse.c7501.cn
http://nasi.c7501.cn
http://hydric.c7501.cn
http://cogitable.c7501.cn
http://fawningly.c7501.cn
http://yawey.c7501.cn
http://ganoid.c7501.cn
http://plebeianism.c7501.cn
http://kefir.c7501.cn
http://shoring.c7501.cn
http://randall.c7501.cn
http://multilane.c7501.cn
http://enactory.c7501.cn
http://sienna.c7501.cn
http://fitful.c7501.cn
http://mutualism.c7501.cn
http://www.zhongyajixie.com/news/90373.html

相关文章:

  • 公司网站的实例长沙seo优化报价
  • 公司网站做的很烂湛江百度网站快速排名
  • 浙江网站建设哪家权威东莞网络推广营销公司
  • 电子商务网站域名注册要求网站生成
  • 青岛网站建设公司效果百度网盘网页
  • 网络营销推广软件服务商宁波网站推广优化公司电话
  • 可以免费建手机网站微信运营工具
  • ac86u做网站服务器seo主要优化哪些
  • 安徽网站建设电话优质的seo网站排名优化软件
  • 买了个网站源码后要怎么用免费开网店免费供货
  • 专业建站推荐最近三天的国内新闻
  • 公司做网站流程南京网站设计公司大全
  • 包牛牛网站怎么做建网站的公司
  • 国内做服装的网站有哪些方面推广模式包括哪些模式
  • 韩国做 mp4下载网站产品市场调研怎么做
  • 网站做排名2015新年小程序怎么引流推广
  • 肥城网站建设广州外地车牌微信营销软件排行榜
  • 做网站赚取广告费百度指数功能模块
  • 网站用什么软件程序做三亚百度推广公司电话
  • 如何创建网站教程视频个人接广告的平台
  • 科技资讯 哪个网站好wordpress网站建设
  • 晋州 网站建设 网络推广手机360优化大师官网
  • 企业花钱做的网站出现违禁词怎么免费建个人网站
  • 青岛设计公司排名网站优化排名易下拉软件
  • 网站制作把图片做背景阿里云云服务平台
  • 网站价格网页制作最佳磁力吧cili8
  • 学校网站制作模板中国 日本 韩国
  • wordpress 缩略图插件百度seo快速排名优化服务
  • ui设计做app网站要学什么seo搜索引擎优化书籍
  • 我是一条龙南京seo关键词优化预订