I am having issues converting a png to tiff. The conversion goes fine, but the image is huge. I think the issue is that I am not doing the compression correctly? Anyone have any suggestions??

Here is the code sample

public static void test() throws IOException {

// String fileName = "4958813_1";

String fileName = "4848970_1";

String inFileType = ".PNG";

String outFileType = ".TIFF";

ImageIO.scanForPlugins();

File fInputFile = new File("I:/HPF/UU/" + fileName + inFileType);

InputStream fis = new BufferedInputStream(new FileInputStream(

fInputFile));

PNGImageReaderSpi spi = new PNGImageReaderSpi();

ImageReader reader = spi.createReaderInstance();

ImageInputStream iis = ImageIO.createImageInputStream(fis);

reader.setInput(iis, true);

BufferedImage bi = reader.read(0);

TIFFImageWriterSpi tiffspi = new TIFFImageWriterSpi();

ImageWriter writer = tiffspi.createWriterInstance();

//Iterator iter = ImageIO.getImageWritersByFormatName("TIFF");

//ImageWriter writer = iter.next();

ImageWriteParam param = writer.getDefaultWriteParam();

param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);

param.setCompressionType("LZW");

param.setCompressionQuality(0.5f);

File fOutputFile = new File("I:\\HPF\\UU\\" + fileName + outFileType);

ImageOutputStream ios = ImageIO.createImageOutputStream(fOutputFile);

writer.setOutput(ios);

writer.write(bi);

}

解决方案

Writer.getDefaultWriteParam() only creates an ImageWriteParam object, it doesn't link it back to anything else.

I don't see any mechanism in your code for your modified param object to be subsequently used in the ImageWriter.

I believe that instead of:

writer.write(bi);

you need to use:

writer.write(null, new IIOImage(bi, null, null), param);

java tiff 压缩,使用Java ImageIO进行Tiff压缩相关推荐

  1. java tiff 压缩_使用Java ImageIO进行Tiff压缩

    我在将png转换为tiff时遇到问题.转换很顺利,但图像很大.我认为问题是我没有正确地进行压缩?任何人都有任何建议? 这是代码示例 public static void test() throws I ...

  2. Java使用google开源工具Thumbnailator实现图片压缩

    前言 作为靠谱的java服务端程序员,图片这个事情一直是个头疼的事情. 现在很多网站上,都有上传图片这个功能,而图片对于现在的很多手机来说,拍摄出来的都是高清图片,分辨率也是相当的高,当然占用的存储空 ...

  3. 一般PNG图片压缩的Java实现

    由于对资源或网速的要求,在手机游戏或一般的网页游戏中,希望能对图片进最大可能的压缩,以节省资源.最近公司做的项目也有对这方面的需求,于是我在网上逛了半天,希望能发现现成版的Java方法可以使用(用程序 ...

  4. java等比压缩图片_java上传并压缩图片(等比例压缩或者原尺寸压缩)

    先看效果: 原图:1.33M 处理后:27.4kb 关键代码; package codeGenerate.util; import java.awt.Color; import java.awt.Gr ...

  5. java 解压与压缩代码_Java实现多文件压缩和解压缩代码详解

    Java实现多文件压缩和解压缩代码 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStre ...

  6. java导出excel压缩包_java动态导出excel压缩成zip下载的方法

    本文实例为大家分享了java动态导出excel压缩成zip下载的具体代码,供大家参考,具体内容如下 package pack.java.io.demo; import java.io.Buffered ...

  7. java 文本压缩_[Java基础]Java使用GZIP进行文本压缩

    import java.io.IOException; import java.util.zip.GZIPOutputStream; import org.apache.commons.io.outp ...

  8. java 解压缩 工具类_Java实现的zip压缩及解压缩工具类示例

    本文实例讲述了Java实现的zip压缩及解压缩工具类.分享给大家供大家参考,具体如下: import java.io.BufferedInputStream; import java.io.Buffe ...

  9. java gzip 解压文件_Java实现文件压缩与解压[zip格式,gzip格式]

    原文:http://www.cnblogs.com/visec479/p/4112881.html#3069573 Java实现ZIP的解压与压缩功能基本都是使用了Java的多肽和递归技术,可以对单个 ...

  10. Java压缩技术(二) ZIP压缩——Java原生实现

    转载自   Java压缩技术(二) ZIP压缩--Java原生实现 查过相关资料后才知道,ZIP应该算作归档类的压缩算法,每一门学科都可深可浅! 闲言少叙,先说ZIP压缩.  zip压缩需要通过Zip ...

最新文章

  1. SEO研究:网站结构
  2. 自从上线了 Prometheus 监控告警,真香!
  3. python把nan值去掉_python – Keras Neural Nets,如何删除输出中的NaN值?
  4. php关闭warning
  5. VTK:Utilities之ArrayRange
  6. 四十一、ETL工具kettle输出步骤
  7. js与c语言效率_JavaScript控制流及关键字与C语言之比较
  8. 电商项目的并发量一般是多少_掌握这些,高并发秒杀系统就不用担心了!
  9. mysql 修改密码演练
  10. Spring Boot 注解描述
  11. Python 学习之旅1
  12. 春节健康膳食,合理配搭
  13. AI,大数据,复杂系统最精25本大书单(建议收藏)
  14. 怎样呵护友谊_呵护友谊需要学会尊重对方.PPT
  15. LitePal遇到的坑
  16. 全彩图解电气控制电路100例(PDF)
  17. 高创CDHD伺服驱动器调试软件ServoStudioSetup V2.18版本与技术资料
  18. 在线编辑word文档
  19. IDEA更改编码颜色/主题
  20. java 省市联动_省市联动(json)

热门文章

  1. 贪吃蛇小游戏(HTML+CSS+JS)
  2. 电商物流仓储流程图模板分享
  3. Chrome浏览器断网时的小恐龙dino怎么一直玩?
  4. 用C语言实现FlappyBird
  5. Modeling and Enhancing Low-Quality Retinal Fundus Images
  6. java批量替换word内容_word多个文档替换内容
  7. MODULE_DEVICE_TABLE宏的作用
  8. 【C语言】C文件编译时间,日期,行号,文件名获取方式
  9. Improved Variational Inference with Inverse Autoregressive Flow
  10. 支持向量机:Duality