linux下JPEGCodec.createJPEGEncoder报错问题

图片压缩windows下正常,linux服务器报java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/JPEGCodec


//       JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(destImage);
//        encoder.encode(tag); //近JPEG编码

替换为

ImageIO.write(tag, "jpeg", destImage);

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!感谢您的提问。关于使用JPEGCodec的应用,我可以给您提供一些思路和参考。 JPEGCodecJava Image I/O API的一部分,它提供了一种将图像数据编码为JPEG格式的方法。这个类可以用来将一个BufferedImage对象保存为JPEG格式的图像文件,或者将JPEG格式的图像文件读入一个BufferedImage对象中。 以下是一个简单的使用示例: ```java import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.codec.jpeg.JPEGImageEncoder; public class JPEGEncoderExample { public static void main(String[] args) throws Exception { // 读入原始图像 BufferedImage image = ImageIO.read(new File("input.jpg")); // 创建JPEG编码器 JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(new FileOutputStream("output.jpg")); // 设置编码参数 JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(image); param.setQuality(0.75f, false); // 编码并保存图像 encoder.setJPEGEncodeParam(param); encoder.encode(image); } } ``` 在这个示例中,我们首先读入了一个名为“input.jpg”的JPEG格式图像文件,然后创建了一个JPEG编码器,并设置了编码参数。接着,我们将原始图像编码为JPEG格式,并保存到了一个名为“output.jpg”的文件中。 当然,这只是一个简单的示例,实际应用中可能还需要进行更多的处理和优化。同时,需要注意的是,Java 9及以上版本已经移除了com.sun.image.codec.jpeg包,因此在新版本中需要使用其他方式实现JPEG编码和解码。 希望这些信息对您有帮助,如果您还有其他问题,请随时提出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值