java createjpeg4_java – 如何实现jpeg无损?

如何在Java中实现jpeg-lossess?

ImageWriter writer = (ImageWriter) ImageIO.getImageWritersByFormatName("JPEG-LS").next();

ImageWriteParam param = writer.getDefaultWriteParam();

param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);

param.setCompressionType("JPEG-LS");

writer.setOutput(ImageIO.createImageOutputStream(new File("C:\\Users\\RileyRen\\Desktop\\123.jpg")));

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

会抛出异常:

Exception in thread "main"

java.lang.IllegalArgumentException: Unknown compression type!

at javax.imageio.ImageWriteParam.setCompressionType(ImageWriteParam.java:1041)

at com.demandforce.ImageCrop.main(ImageCrop.java:59)

param.getCompressionTypes()仅打印[JPEG].

使用JAI(版本1.1.3):

PlanarImage input = JAI.create("fileload", "C:\\Users\\RileyRen\\Desktop\\test.jpg");

ParameterBlock pb = new ParameterBlock();

pb.addSource(input);

pb.add(x);

pb.add(y);

pb.add(width);

pb.add(height);

PlanarImage output = JAI.create("crop",pb,null);

JAI.create("filestore",output,"C:\\Users\\RileyRen\\Desktop\\123.jpg","JPEG-LS");

同时抛出异常:

Exception in thread "main"

java.lang.IllegalArgumentException: FileStore The specified format has no associated registered ImageCodec.

at javax.media.jai.JAI.createNS(JAI.java:1087)

at javax.media.jai.JAI.create(JAI.java:973)

at javax.media.jai.JAI.create(JAI.java:1621)

at com.demandforce.ImageCrop.main(ImageCrop.java:103)

你能写一个样品吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值