我在做一个图片处理的java设计程序,有个问题就是我处理之后一个图片不知道怎么把它存到当地的硬盘里面,由于是为了这个设计自学的java,所以很多java的方法不会。
我首先是得到图片的高度、宽度和像素,分别是ih,iw和一个数组类型的pixels,目前我用image里面的getWidth和getHeight得到的图像长、高,再分别通过PixelGrabber得到像素,通过ColorModel可得到RGB值和Alpha值,然后通过ImageProducer和createImage可以得到图片image,然后不管是通过drawImage现实图片或者对得到的数据进行数字图像处理,再利用得到的newimage显示都没问题。现在是我能显示在自己做的窗体上,但那是不知道怎么保存(已知的有iw、ih、pixels,newimage)。
以前是做c语言的比较多,对于java需要找库中方法去实现功能很不熟悉和习惯,我看了网上有些人的想法是通过io输出来得到这个file,但是我尝试使用了FileImageOutputStream都没有成功,各位大神看看我是不是这个思路有问题或者有很好的方法我没有找到。
真心感谢!
我首先是得到图片的高度、宽度和像素,分别是ih,iw和一个数组类型的pixels,目前我用image里面的getWidth和getHeight得到的图像长、高,再分别通过PixelGrabber得到像素,通过ColorModel可得到RGB值和Alpha值,然后通过ImageProducer和createImage可以得到图片image,然后不管是通过drawImage现实图片或者对得到的数据进行数字图像处理,再利用得到的newimage显示都没问题。现在是我能显示在自己做的窗体上,但那是不知道怎么保存(已知的有iw、ih、pixels,newimage)。
以前是做c语言的比较多,对于java需要找库中方法去实现功能很不熟悉和习惯,我看了网上有些人的想法是通过io输出来得到这个file,但是我尝试使用了FileImageOutputStream都没有成功,各位大神看看我是不是这个思路有问题或者有很好的方法我没有找到。
真心感谢!
“ImageIO.write(image,"jpg",response.getOutputStream()); //把图形以JPG的格式存到流中然后调用 ImageIO.write输到浏览器 ”
其中它使用ImageIO类使用支持给定格式的任意 ImageWriter 将一个图像写入 ImageOutputStream。
我使用的方法是用ImageIO类支持的write(RenderedImage im, String formatName, File output) 方法将此图片写入file定义的路径和指定名字中,但是还是报错,问题在 ImageIO.write(tmp,"jpg",new File("E:\\","ieee"))此行,报错为找不到路径。麻烦你再看下。
ImageIO.write(BufferedImage,"jpg(图片格式)",File对象);
ImageIO.write(BufferedImage,"jpg",new File("E:/image.jpg"));