亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

Java pdf和jpg互轉案例

瀏覽:5日期:2022-08-23 14:30:55

pdfbox: jpg轉pdf:

/** * 使用pdfbox將jpg轉成pdf * @param jpgStream jpg輸入流 * @param pdfPath pdf文件存儲路徑 * @throws IOException IOException */ public static void jpgToPdf(InputStream jpgStream, String pdfPath) throws IOException { PDDocument pdDocument = new PDDocument(); BufferedImage image = ImageIO.read(jpgStream); PDPage pdPage = new PDPage(new PDRectangle(image.getWidth(), image.getHeight())); pdDocument.addPage(pdPage); PDImageXObject pdImageXObject = LosslessFactory.createFromImage(pdDocument, image); PDPageContentStream contentStream = new PDPageContentStream(pdDocument, pdPage); contentStream.drawImage(pdImageXObject, 0, 0, image.getWidth(), image.getHeight()); contentStream.close(); pdDocument.save(pdfPath); pdDocument.close(); }

pdfbox: pdf轉jpg:

static void pdfbox() throws IOException { long start = System.currentTimeMillis(); //pdf路徑 URL url = new URL('file:///D:/1.pdf'); InputStream stream = URLUtil.getStream(url); // 加載解析PDF文件 PDDocument doc = PDDocument.load(stream); PDFRenderer pdfRenderer = new PDFRenderer(doc); PDPageTree pages = doc.getPages(); int pageCount = pages.getCount(); for (int i = 0; i < pageCount; i++) { BufferedImage bim = pdfRenderer.renderImageWithDPI(i, 200); ByteArrayOutputStream os = new ByteArrayOutputStream(); ImageIO.write(bim, 'jpg', os); byte[] datas = os.toByteArray();// InputStream is = new ByteArrayInputStream(datas); //jpg文件轉出路徑 FileUtil.writeBytes(datas, new File('d:/jpg/' + i + '.jpg')); } long end = System.currentTimeMillis(); long time = (end - start) / 1000; System.out.println(StrUtil.format('pdf轉jpg耗時: {}s', time)); }

icepdf: pdf轉jpg

Document document = new Document();document.setUrl(new URL(pdfUrl));int pageNum = document.getNumberOfPages();for (int i = 0; i < pageNum; i++) { // 目前僅支持1對1的pdf->jpg if (i != 0) { continue; } // 3、pdf -> jpg BufferedImage bim = (BufferedImage) document.getPageImage(i, GraphicsRenderingHints.SCREEN, Page.BOUNDARY_CROPBOX, rotation, scale); os = new ByteArrayOutputStream(); ImageIO.write(bim, 'jpg', os); // 4、jpg -> fdfs byte[] datas = os.toByteArray(); InputStream is = new ByteArrayInputStream(datas);

補充知識:Java實現對png圖片文件電子簽名操作

我就廢話不多說了,大家還是直接看代碼吧~

/** * 根據圖片像素位置添加用戶電子簽名 * @param imagePath 要操作的圖片路徑 * @param signImagePath 電子簽名圖片路徑 * @param outImagePath 合成后輸出圖片路徑 * @param width 像素位寬度 * @param height 像素位高度 */public static void syntheticPicture(String imagePath, String signImagePath,Integer width,Integer height, String outImagePath ) { try { BufferedImage big = ImageIO.read(new File(imagePath)); BufferedImage small = ImageIO.read(new File(signImagePath)); Graphics2D g = big.createGraphics(); //根據圖片像素位置粘貼帶電子簽名 g.drawImage(small, width, height, small.getWidth(), small.getHeight(), null); g.dispose(); ImageIO.write(big, outImagePath .split('.')[1], new File(outImagePath )); } catch (Exception e) { throw new RuntimeException(e); }}

以上這篇Java pdf和jpg互轉案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美大陆日韩 | 亚洲日本中文字幕在线 | 最新国产三级 | 国产一级毛片一区二区三区 | 国产视频中文字幕 | 日本高清无吗免费播放 | 特黄aaaaaa久久片 | 欧美色性 | 国产亚洲网站 | 色在线免费视频 | 手机在线日韩高清理论片 | 欧美亚洲91 | 日本最色视频 | 一级特黄aaa免费 | 91伦理视频| 免费看特级淫片日本 | 色偷偷亚洲男人天堂 | 一级亚洲 | 久久高清免费视频 | 男女无遮掩做爰免费视频软件 | 国产成人福利视频在线观看 | 亚洲一区在线观看视频 | 猛操美女| a毛片免费全部播放完整成 a毛片免费全部在线播放毛 | 久久精品视频在线观看榴莲视频 | 国产欧美日韩在线一区二区不卡 | 99久99久6久热在线播放 | 男女午夜24式免费视频 | 精品国产高清毛片 | 亚洲制服丝袜美腿亚洲一区 | 亚洲综合射 | 欧美亚洲一区二区三区 | 欧洲成人免费高清视频 | 欧美高清日本三级人妇 | 美女视频免费黄 | 国产人成亚洲第一网站在线播放 | 欧美成人高清视频 | 久久国产精品1区2区3区网页 | 久久福利青草免费精品 | 亚洲三级小视频 | 久久99国产精品 |