ImageIO.write(image,"png",outImage)得不到图片,main方法可以,启动tomcat就不行了

ZBosion 2016-11-03 11:19:43
ImageIO.write(image,"png",outImage)得不到图片

主要问题在于: 我写个test,只用main调用是可以生成图片的,而且很清楚,
但是 我启动tomcat后,页面上调用就不可以了 ,文件生成了,但是没有图片内容




有没有大神可以帮忙解答一下,代码: image是另一张图片,我是实现把Base64字符串图片写到另一图片上生成新的图片

// Base64解码
BASE64Decoder decoder = new BASE64Decoder();
byte[] b = decoder.decodeBuffer(photoStr);
ByteArrayInputStream in = new ByteArrayInputStream(b);
//将in作为输入流,读取图片存入image中,而这里in可以为ByteArrayInputStream();
BufferedImage photo = ImageIO.read(in);
Graphics g =image.getGraphics();

//四个参数分别是:图1横坐标,图1纵坐标,图1上绘制的图2的长,图1上绘制的图2的宽  
g.drawImage(photo,
30,
70,
photo.getWidth(),
photo.getHeight(),
null);
OutputStream outImage=new FileOutputStream(imgurl);
ImageIO.write(image,"tif",outImage);//合成的图片

...全文
1508 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nbspzs 2017-03-22
  • 打赏
  • 举报
回复
楼主这个 问题最终怎么解决的? 我本地运行可以生成图片,在tomcat下面没有图片 生成
ZBosion 2016-11-03
  • 打赏
  • 举报
回复
最后 graphics.drawImage(photo, 30, 70, photo.getWidth(), photo.getHeight(), null); graphics.dispose(); in.close(); OutputStream outImage=new FileOutputStream(imgurl); ImageIO.write(image,"tif",outImage);//合成的图片 outImage.close(); 是要这样关闭流么??
  • 打赏
  • 举报
回复
http://blog.csdn.net/frightingforambition/article/details/49929201 你可以参看下这篇博客

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧