关于JAVA的图片处理问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于JAVA的图片处理问题相关的知识,希望对你有一定的参考价值。

ImageIO.write((BufferedImage) Itemp, "jpg", sImg);

这个东西中的 "jpg", 这个参数的作用是什么?是不是只能上传JPG类型格式的图片?但貌似我用了这个,我上传GIF也是可以的,为什么呢?如果我想上传任何类型的图片,应该怎么做?

public static boolean write(RenderedImage im, String formatName, File output) throws IOException
使用支持给定格式的任意 ImageWriter 将一个图像写入 File。如果已经有一个 File 存在,则丢弃其内容。

参数:im - 要写入的 RenderedImage。
formatName - 包含格式非正式名称的 String。
output - 将在其中写入数据的 File。
返回:如果没有找到合适的 writer,则返回 false。
抛出: IllegalArgumentException - 如果任何参数为 null。
IOException - 如果在写入过程中发生错误。

说白了,就是按指定的formatName把图片存到file(或OutputStream)中。formatName是已注册的、可以保存图片的writer的非正式名称,比如“jpeg”,“tiff”。如果想知道到底有哪些writer在你的机器上被注册了,用ImageIO.getWriterFormatNames(),返回类型是String[] 。同样的,还有读取图片的reader,对应的是ImageIO.getReaderFormatNames()。

最后要说的是,这个方法是保存图片,和上传没有关系。你可能是要上传图片后再保存吧!
参考技术A 把图像按照JPEG类型输出。
输入itemp可以是任何能被识别的图像(GIS、BMP、JPEG、……),但输出被指定为JPEG。

以上是关于关于JAVA的图片处理问题的主要内容,如果未能解决你的问题,请参考以下文章

JPG&PNG图片压缩java实现

JPG&PNG图片压缩java实现

thinkphp关于上传图片到数据库里面大小的问题

关于处理上传图片的问题

关于富文本上传图片多选的处理

Android关于图片的处理