java 文件类型转换
来源:互联网 发布:php 在线客服 免费 编辑:程序博客网 时间:2024/04/27 18:02
PDF转JPG
1、提高转换后JPG文件清晰度(清晰度降低、图片质量压缩也用的此方法)
示例为pdf转换jpg 在转换的过程中清晰度会下降、红色部分为提高清晰度
File file = new File("D:\\workspace\\word2pdf\\src\\tests.doc.pdf"); RandomAccessFile raf = new RandomAccessFile(file, "r"); FileChannel channel = raf.getChannel(); ByteBuffer buf = channel.map(FileChannel.MapMode.READ_ONLY, 0, channel .size()); PDFFile pdffile = new PDFFile(buf); System.out.println("页数: " + pdffile.getNumPages()); String getPdfFilePath = System.getProperty("user.dir") + "\\pdfPicFile"; System.out.println("getPdfFilePath is :" + getPdfFilePath); for (int i = 1; i <= pdffile.getNumPages(); i++) { // draw the first page to an image PDFPage page = pdffile.getPage(i);
Rectangle rect = new Rectangle(0, 0, (int) page.getBBox() .getWidth(), (int) page.getBBox().getHeight()); Image img = page.getImage(rect.width, rect.height, // width & // height rect, // clip rect null, // null for the ImageObserver true, // fill background with white true // block until drawing is done ); BufferedImage tag = new BufferedImage(rect.width, rect.height,BufferedImage.TYPE_INT_RGB); tag.getGraphics().drawImage(img, 0, 0, rect.width, rect.height, null); // 输出到文件流 FileOutputStream out = new FileOutputStream(getPdfFilePath + "\\" + i + ".jpg"); System.out.println("成功保存图片到:" + getPdfFilePath + "\\" + i + ".jpg"); /* * JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); * encoder.encode(tag); // JPEG编码 out.close(); */ JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); JPEGEncodeParam param2 = encoder.getDefaultJPEGEncodeParam(tag); param2.setQuality(1f, false);// 1f是提高生成的图片质量 encoder.setJPEGEncodeParam(param2); encoder.encode(tag); // JPEG编码 out.close(); } }}
- java 文件类型转换
- Java利用openoffice转换文件类型
- java对word各种文件类型的转换
- java-文件类型-文件类型判断
- 【python】文件类型转换
- file上传下载文件类型转换出错
- [G+smo]几何文件类型转换
- Java判断文件类型
- Java判断文件类型
- java文件类型信息
- Java判断文件类型
- java处理大文件类型
- Java判断文件类型
- Java判断文件类型
- 使用Java获取文件类型
- java判断文件类型
- Java判断文件类型
- JAVA对文件类型的校验
- 在Android开发中使用Ant 一:环境的搭建及入门
- JAVA SOCKET编程 阻塞式IO 与 非阻塞式IO
- set_new_handler 内存不足处理器
- 数组+hash = json
- Android 项目编译过程
- java 文件类型转换
- chromium保存网页功能
- ACE_Reactor的各种handle_*挂钩方法返回值意义
- Android文件上传
- Expression Template(表达式模板,ET)
- QT signals and slots
- 数组+链表 小球移动过程
- NYOJ 540 奇怪的排序
- struts中s:property截取字符串