zoukankan      html  css  js  c++  java
  • java的pdf转jpg

    1.依赖

    <!--pdf转jpg-->
            <dependency>
                <groupId>org.apache.pdfbox</groupId>
                <artifactId>pdfbox</artifactId>
                <version>2.0.4</version>
            </dependency>

    2.代码

      /**
         * pdf转jpg
         * PDDocument.load(file)有多个重载方法
         */
        public List<BufferedImage> convertToImage(byte[] file) throws IOException {
            PDDocument document = PDDocument.load(file);
            PDFRenderer pdfRenderer = new PDFRenderer(document);
            List<BufferedImage> bufferedImageList = new ArrayList<>();
            for (int page = 0;page<document.getNumberOfPages();page++){
                BufferedImage img = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB);
                bufferedImageList.add(img);
            }
            document.close();
            return bufferedImageList;
        }
        /**
         * 多页合并
         */
        public BufferedImage concat(List<BufferedImage> images) {
            int heightTotal = 0;
            for(int j = 0; j < images.size(); j++) {
                heightTotal += images.get(j).getHeight();
            }
            int heightCurr = 0;
            BufferedImage concatImage = new BufferedImage(images.get(0).getWidth(), heightTotal, BufferedImage.TYPE_INT_RGB);
            Graphics2D g2d = concatImage.createGraphics();
            for(int j = 0; j < images.size(); j++) {
                g2d.drawImage(images.get(j), 0, heightCurr, null);
                heightCurr += images.get(j).getHeight();
            }
            g2d.dispose();
            return concatImage;
        }
  • 相关阅读:
    Web前端一种动态样式语言-- Less
    Windows下查看8080进程及结束进程命令
    Java应用程序实现屏幕的"拍照"
    批处理命令 BAT备份MySQL数据库
    LineNumberReader类
    SAXReader
    linux打包压缩命令汇总
    Jquery获取选中的checkbox的值
    Jquery_联系电话正则表达式
    CSS overflow 属性
  • 原文地址:https://www.cnblogs.com/i-tao/p/14154783.html
Copyright © 2011-2022 走看看