jjzjj

grfmt_imageio

全部标签

Java ImageIO.read() 返回 null

我想在我的项目中读取图像(.png文件),我希望它也能在可运行的.jar文件中工作。所以我写了这段代码:try{InputStreamin;in=Loader.class.getClassLoader().getResourceAsStream("buttons.png");System.out.println(in.read()+",Reader:"+in);BufferedImageimg=ImageIO.read(in);System.out.println(img.getHeight());in.close();}catch(IOExceptione){e.printStack

java - 使用 ImageIO.write() 创建 JPEG 创建一个 0 字节文件

我正在尝试编写一种拍摄图像并保存该图像的100x100缩略图的方法。但是,当我保存文件时,它在Ubuntu的ImageViewer中显示为不可读的0字节图像(错误“解释JPEG图像文件时出错(对状态200中的JPEG库的不正确调用)”)。我的代码如下:publicbooleanscale(){Stringfile=filename.substring(filename.lastIndexOf(File.separator)+1);Fileout=newFile("data"+File.separator+"thumbnails"+File.separator+file);if(out.

Java 8 ImageIO 在 Linux 中错误地读取 JPEG

我正在尝试读取用户上传的JPEG图像(任意)以在服务器应用程序中创建缩略图。系统在Windows7/OracleJava8u11中运行良好,但我在服务器上的CentOS下遇到颜色模型问题:原图是:http://studio-st.ru/media/portfolio/image/45Windows下开发工作站生成的缩略图绝对正确Linux下的结果发生色移(在Java8u05上偏红,在Java8u11上色移)。此处未展示,因为原始示例在现场,现已修复。更深入的调查显示问题出在读取图像中-Windows和Linux上的ImageIO.read(inputStream)返回具有完全相同参数的

java - Eclipse 错误 : javax. imageio.IIOException:无法读取输入文件

以下代码在BlueJIDE中运行成功,但在Eclipse中运行失败。Stringpath="images/pic1.jpg";BufferedImagemyPicture=null;try{myPicture=ImageIO.read(newFile(path));}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}我的图像路径在两个IDE中都是相同的。此外,我观察到*.class文件和图像文件的目录结构相同。为什么这只发生在eclipse中? 最佳答案

java - ImageIO.write 不工作?

我正在写一个3D绘画,我在java中发现了一个问题。在代码的一部分中它正在工作:try{ImageIconsavePane=newImageIcon("save.png");StringFilePath=(String)JOptionPane.showInputDialog(null,"Enterfilepathandname\nWarning:Insteadofone'\\'write'\\\\'","Save",JOptionPane.PLAIN_MESSAGE,savePane,null,"C:\\\\example.png");BufferedImageimage=newRob

java - 如何使 ImageIO 从 InputStream :Java 读取

我已经创建了可执行jar文件(使用Eclipse),jar中包含一组图像(.png)文件。所以我在项目的/images文件夹中添加了一个包含所有图像的源文件夹。代码必须访问这些文件才能使用ImageIO.read(newFile(path);创建BufferedImage早些时候,为了获取路径,我使用了ClassName.class.getResource(/image/test.png).toURI();在执行jar时,它抛出错误URIisnothierarchical所以现在我正在使用ClassName.class.getResourceAsStream(/image/test.p

java imageio内存泄漏

我有两个Java应用程序,它们都使用吨内存,并且都使用ImageIO.write()。到目前为止,这是我发现两者之间唯一的共同点。循环调整图像大小。另一个循环下载图像并将它们保存到磁盘。这是相关代码:1)for(FileimageFile:imageFilesList){if(!stillRunning)return;FileoutputFile=newFile(imageFile.getAbsolutePath().replace(sourceBaseFolder.getAbsolutePath(),destinationFolder.getAbsolutePath()));try{

java - javax.imageio.ImageIO 坏了吗?它导入一些旋转的图像

下面您将看到一张来自土耳其的名为“simit”的精美糕点图片。它取自iPad2,因此它是尺寸为720*960的JPEG。问题是,当我使用javax.imageio.ImageIO.read时方法,它奇怪地导入的图像是向左旋转的BufferedImage并变为960*720。我在OSX上的SunJVM1.6.0_29和Debian上的SunJVM1.6.0_26中复制了这个。这是代码:publicclassMain{publicstaticvoidmain(String[]args)throwsException{FileInputStreamstream=newFileInputStr

java - 为什么 ImageIO 在将 BMP 文件重新保存到 MS Paint 中之前不读取它?

我有一个位图文件,test3.bmp,我可以用我测试过的每个图像查看器查看和编辑它。也就是说,我无法将它读入我的Java应用程序。如果我在MSPaint中编辑BMP,保存它,撤消更改,然后保存它(test3_resaved.bmp),我得到相同的图像,但文件大小不同。不同的文件大小与我无关……重要的是我的应用程序可以读取重新保存的文件。谁能告诉我为什么一张图片适用于我的代码而另一张却不能?图片文件:test3.bmptest3_resaved.bmp这是一个最小的测试应用程序:packageTest;importjava.awt.Graphics;importjava.awt.Grap

java - Toolkit.getDefaultToolkit().createImage() 与 ImageIO.read()

我正在使用Swing创建一个UI,我想在JLabel中显示图像。我使用的代码如下:JLabellabel=newJLabel(newImageIcon(ImageIO.read(newFile("img.jpg"))));如果我使用png图像,效果很好,但是当涉及到jpg(只有其中一些)时,我得到一张偏红的图像(与之前的图像不同)我在Paint.NET中看到)。我使用的图像是这个:img.jpg所以我尝试了(作为替代方案):Toolkit.getDefaultToolkit().createImage(newFile("img.jpg").getAbsolutePath());有人知道