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. 函数 php_PHP函数缺陷详解
  2. CUDA driver version is insufficient for CUDA runtime version
  3. python文件读取数据-Python从文件中读取数据
  4. seg是伪操作符,用来取后面符号的段地址
  5. Linux快速工作使用指令经验(持续更新)
  6. HDU 5624 KK's Reconstruction
  7. boost::process::start_dir相关的测试程序
  8. LeetCode 55. 跳跃游戏(贪心)
  9. docker mysql57_docker安装mysql57
  10. 【C#桌面应用】第一节:使用C#开发桌面应用的准备
  11. 洛谷P2606 [ZJOI2010]排列计数(数位dp)
  12. 升级总代分享思路_旧笔记本光驱换SSD,升级内存,改造散热还能再战5年
  13. php获取远程文件夹下的文件是否存在,PHP判断远程文件是否存在函数
  14. linux容器安装cmake
  15. VR全景图拍摄制作之无人机航拍
  16. Solidwork软件盗版
  17. 小福利,python内置map函数和lambda函数运用
  18. Cortex-M入门
  19. 计算机教育中缺失的一课,劝学弟学姝们一句,一定要趁早补上,工作后会事半功倍
  20. error C2065: “IDD_DIALOG1”: 未声明的标识符 .

热门文章

  1. 服务器 分辨率问题 显示器不显示不出来,遇到显示器分辨率调不了这个问题怎么办?...
  2. (三)基础网络演进、分类与定位的权衡
  3. Ubuntu 下Rhythmbox播放器中文乱码解决办法
  4. 消息中间件RabbitMQ
  5. 为什么有了FineBI后还会有FineReport?这两者的区别真的很大
  6. 信用卡逾期别慌,有的逾期记录可撤销
  7. photoshop cs6 下载并安装教程
  8. 实习期间的一些思考整理(5)2018.4.17~4.18
  9. 2021-2027全球与中国零售空间规划软件市场现状及未来发展趋势
  10. 有道换域名,目标中立、客观、包容