永发信息网

java中JPEGImageEncoder的用法

答案:2  悬赏:20  手机版
解决时间 2021-02-05 15:41
java中JPEGImageEncoder的用法
最佳答案
String srcFileName="x:\\dd\\test.jpg";//源图像路径
String destFileName="x:\\dd\\test.jpg";//源图像路径
BufferedImage originalPic = ImageIO.read(new FileInputStream(srcFileName));

int imageWidth = originalPic.getWidth();
int imageHeight = originalPic.getHeight();
//产生新的图像缓冲对象
BufferedImage newBufferedImage = new BufferedImage(imageWidth, imageHeight,
BufferedImage.TYPE_3BYTE_BGR);
//颜色转换(黑白)
ColorConvertOp cco = new ColorConvertOp(ColorSpace
.getInstance(ColorSpace.CS_GRAY), null);
cco.filter(originalPic, newBufferedImage);

FileOutputStream fos = new FileOutputStream(destFileName);
if (destFileName.toLowerCase().endsWith(".gif")) {
ImageIO.write(newBufferedImage, "gif", fos);
}
if (destFileName.toLowerCase().endsWith(".png")) {
ImageIO.write(newBufferedImage, "png", fos);
}
//针对jpeg、jpg设置输出编码
if ((destFileName.toLowerCase().endsWith(".jpg"))
|| (destFileName.toLowerCase().endsWith(".jpeg"))) {
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(newBufferedImage);
param.setQuality(1.0F, false);
encoder.encode(newBufferedImage);
}
fos.flush();
fos.close();
重点解释一下:
针对jpeg、jpg设置输出编码
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);
全部回答
jpegcodec.createjpegencoder的作用是创建一个和指定输出流关联的jpegimageencoder对象。 你这里的问题主要是输出流使用了response的输出流,如果这个代码是在servlet中书写的话,是没有问题的,但是,现在你是书写在jsp中,jsp将被传输给客户端,说白了,response的输出流已经被占用了,这里还向其中写图片的内容,所以就会出错。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
华泰矿山机电劳保棉被地址好找么,我有些事要
祁东神州商务酒店地址在什么地方,想过去办事
凤英土菜馆客栈地址好找么,我有些事要过去
泾县月亮湾鸳鸯泉客栈地址好找么,我有些事要
诚信公寓(衡阳祁东)怎么去啊,我要去那办事
和谐宾馆(过水坪镇委东)怎么去啊,我要去那办
泾县兴林大酒店地址有知道的么?有点事想过去
水之尚桶装水经营部地址在什么地方,我要处理
传奇内挂怎么添加药品
车子玻璃覆着好多小颗粒,摸上去糙糙的,怎么
【表里不一】什么成语形容表里不一的人
弗吉尼亚联邦大学商业分析硕士怎么样
板面怎么做好吃去哪学正宗安徽板面技术
正宗米酒店(衡阳祁东)怎么去啊,我要去那办事
泾县爱民竹林农家乐地址在什么地方,我要处理
推荐资讯
可以练小腿肌肉和拉长筋的健身器材
对群众需求与期望的评估属于A.社会诊断B.流行
圣地购物广场在哪里啊,我有事要去这个地方
中国移动手机(动感通讯店)地址在什么地方,想
求头像原图
到底是卖衣服好?还是做服务员好?之前是做服
大地配货站(208国道东50米大地配货站)地址在
三国杀马岱台词试听
方平的意思是什么啊?知道的请说下!
沈阳大学如何分配宿舍,生物科学系的可以分到
民安刻字社(亭林路麒麟新村)地址在哪,我要去
平塘县烟草专卖局专卖稽查大队地址在哪,我要
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?