Tag: javax.imageio

如何从BufferedImage获取InputStream?

我如何从BufferedImage对象获取InputStream? 我试过这个,但ImageIO.createImageInputStream()总是返回NULL BufferedImage bigImage = GraphicsUtilities.createThumbnail(ImageIO.read(file), 300); ImageInputStream bigInputStream = ImageIO.createImageInputStream(bigImage); 正在正确生成图像缩略图,因为我可以成功地将bigImage绘制到JPanel 。 谢谢。

如何从泽西REST服务方法返回一个PNG图像到浏览器

我有一个运行Jersey REST资源的Web服务器,我不知道如何获得浏览器img标签的图像/ PNG参考; 提交表单或获得Ajax响应后。 添加graphics的image processing代码正在工作,只需要以某种方式返回它。 码: @POST @Path("{fullsize}") @Consumes(MediaType.MULTIPART_FORM_DATA) @Produces("image/png") // Would need to replace void public void getFullImage(@FormDataParam("photo") InputStream imageIS, @FormDataParam("submit") String extra) { BufferedImage image = ImageIO.read(imageIS); // …. image processing //…. image processing return ImageIO. .. ? } 干杯

无法使用ImageIO.read(文件文件)读取JPEG图像

我在使用ImageIO.read(File file)读取这一个JPEG文件时遇到了问题 – 它会通过消息“Unsupported Image Type”引发exception。 我试过其他的JPEG图像,他们似乎工作正常。 唯一的区别,我已经能够发现的是,这个文件似乎包括一个缩略图 – 是已知会导致ImageIO.read()的问题? 编辑: 添加结果图像:

用ImageIO创buildanimationGIF?

有没有人设法说服ImageIO写一个animationGIF,特别是设置正确的元数据? 我的第一次尝试大致如下(其中b1和b2是BufferedImages): ImageTypeSpecifier spec = new ImageTypeSpecifier(b1); ImageWriter wr = ImageIO.getImageWriters(spec, "GIF").next(); wr.setOutput(ImageIO.createImageOutputStream(new File("C:\\Flashing.gif"))); ImageWriteParam param = wr.getDefaultWriteParam(); IIOMetadata meta = wr.getDefaultImageMetadata(spec, param); wr.prepareWriteSequence(meta); wr.writeToSequence(new IIOImage(b1, null, null), param); wr.writeToSequence(new IIOImage(b2, null, null), param); 这似乎几乎工作,但是: 我显然需要以某种方式设置“适当的”元数据来设置图像之间的时间,并理想地使它们循环(我天真地希望默认会做一些明智的,但嘿…) 无论默认情况下写入的元数据显然都不是很正确:在加载文件时,GIMP会给出一些错误消息,尽pipe将图像embedded到Firefox的testing网页中可以非常快速地连续显示这两个图像,接近我想要的… 如果有人从ImageIO写GIFanimation来工作,并可以共享一段代码或如何解决上述问题,将不胜感激!

包含图像与可执行的jar

我一直在浏览Stackoverflow寻找如何做到这一点,我还没有成功 我打包了一个我制作成可执行jar的快速游戏,但是我没有正确地引用这些图片,我只是引用了这些文件 background = ImageIO.read(new File("wood.jpeg")); 我有我的类在src默认包林不知道我应该添加的图像,或者如果我必须将其添加到构buildpath或正确的方式添加图像到最新版本的构buildpath

Java / ImageIO获取图像尺寸而不读取整个文件?

有没有办法在不读取整个文件的情况下获取图像的尺寸? URL url=new URL(<BIG_IMAGE_URL>); BufferedImage img=ImageIO.read(url); System.out.println(img.getWidth()+" "+img.getHeight()); img=null;

在Java中使用ImageIO设置jpg压缩级别

我正在使用javax.imageio.ImageIO将BufferedImage保存为jpeg文件。 特别是,我创build了以下Java函数: public static void getScreenShot(BufferedImage capture, Path folder, String filename) { try { ImageIO.write(capture, "jpeg", new File(folder.toString()+"/"+filename+".jpg")); } catch (AWTException | IOException ex) { Logger.getLogger(ScreenShotMaker.class.getName()).log(Level.SEVERE, null, ex); } } 同样任何image processing软件,我希望改变jpeg文件的压缩级别。 但是,我正在寻找ImageIO中似乎缺less的这个选项。 我可以设置压缩级别吗?

如何获得图像的高度和宽度使用java?

除了使用ImageIO.read获取图像的高度和宽度,还有其他的方法吗? 因为我遇到了locking线程的问题。 at com.sun.medialib.codec.jpeg.Decoder.njpeg_decode(Native Method) at com.sun.medialib.codec.jpeg.Decoder.decode(Decoder.java:87) at com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader.decode(CLibJPEGImageReader.java:73) – locked <0xd96fb668> (a com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader) at com.sun.media.imageioimpl.plugins.clib.CLibImageReader.getImage(CLibImageReader.java:320) – locked <0xd96fb668> (a com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader) at com.sun.media.imageioimpl.plugins.clib.CLibImageReader.read(CLibImageReader.java:384) – locked <0xd96fb668> (a com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader) at javax.imageio.ImageIO.read(ImageIO.java:1400) at javax.imageio.ImageIO.read(ImageIO.java:1322) 这个错误只发生在Sun的应用程序服务器上,因此我怀疑这是Sun的错误。

问题设置图像的exif数据

我在iOS 4.1中使用了新的ImageIO框架。 我使用以下方法成功检索了exif元数据: CFDictionaryRef metadataDict = CMGetAttachment(sampleBuffer, kCGImagePropertyExifDictionary , NULL); 读出来,看起来有效。 保存图像的作品,但从来没有任何exif数据的图像。 CGImageDestinationRef myImageDest = CGImageDestinationCreateWithURL((CFURLRef) docurl, kUTTypeJPEG, 1, NULL); // Add the image to the destination using previously saved options. CGImageDestinationAddImage(myImageDest, iref, NULL); //add back exif NSDictionary *props = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithFloat:.1], kCGImageDestinationLossyCompressionQuality, metadataDict, kCGImagePropertyExifDictionary, //the exif metadata nil]; //kCGImagePropertyExifAuxDictionary CGImageDestinationSetProperties(myImageDest, (CFDictionaryRef) props); […]

Java – 从图像获取像素数组

我正在寻找从BufferedImage获取像素数据(intforms为int[][] )的最快方法。 我的目标是能够使用int[x][y]从图像中处理像素(x, y) 。 我发现的所有方法都不这样做(大多数方法返回int[] s)。