问题标签 [javax.imageio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 无法使用 ImageIO.read(文件文件)读取 JPEG 图像
我在使用 ImageIO.read(File file) 读取这个 JPEG 文件时遇到问题 - 它会引发异常,并显示消息“不支持的图像类型”。
我尝试过其他 JPEG 图像,它们似乎工作正常。
我能够发现的唯一区别是该文件似乎包含一个缩略图 - 是否已知会导致 ImageIO.read() 出现问题?
编辑:
添加了生成的图像:
java - Java/ImageIO 在读取整个文件之前验证格式?
我正在开发一个允许用户上传图像的 Web 应用程序。我关心的是文件的大小,特别是如果它们是无效格式。
我想知道在读取整个文件之前,java(或第三方库)是否有办法检查允许的文件格式(jpg、gif 和 png)。
java - Java/Groovy 文件 IO 用自己的内容替换图像文件 - 为什么会这样?
我有一些 JPG 文件需要在运行时用自己的 JFIF 标准化版本替换(我们使用的供应商给我们的 JPG 没有正确的标题,因此它们在某些应用程序中不起作用)......我是能够从现有图像创建一个新文件,然后从该文件中获取一个缓冲图像并将内容直接写回文件中,而无需删除它并且它可以工作......
我的问题是为什么?为什么文件最终没有翻倍?为什么我不必先删除它?为什么我能够将文件对象放入现有文件,然后将其视为全新文件?似乎我认为是“文件”的东西并不是 java 中的 File 对象实际上是什么,否则这根本行不通。
我的代码完全符合我的要求,但我不相信它总是会......它看起来太容易了
java - 在 Java 中操作 PNG
有没有一种简单的方法可以在 Java 中操作 PNG?我知道我可以读入 BufferedImage 并将其写回,但我需要在图像边缘周围添加清晰的像素。是否有捷径可寻?
java - Imageiio 无法创建图像输入流
使用imageio.imageio.read
iget 时无法创建ImageInputStream
. 我有一个 catch 异常,所以程序可以存活,但我想知道是否有办法在它周围放置一个 if 语句,检查它是否失败,然后尝试再次读取它。基本上是问是否有异常测试?
java - Java:检测图像格式、调整大小(缩放)并保存为 JPEG
这是我拥有的代码,它实际上可以工作,并不完美,但确实可以,问题是调整大小的缩略图没有粘贴在白色绘制的矩形上,破坏了图像的纵横比,这是代码,有人可以建议我修复请给它?
谢谢
java - Java 1.5.0_16 保存 jpg 图像时颜色损坏
我有一个从磁盘加载的图像(存储为 a BufferedImage
),我在 a 上正确显示,JPanel
但是当我尝试使用下面的命令重新保存此图像时,图像以微红色调保存。
笔记!image 是一个BufferedImage
并且fileName
是一个File
指向要保存的以“ .jpg
”结尾的文件名的对象。
我已经读到ImageIO
早期 JDK 中的方法存在问题,但据我所知,我不在其中一个版本上。我正在寻找的是一种在不更新 JDK 的情况下解决这个问题的方法,但是我说我仍然想知道这个问题是在什么 JDK 中修复的(如果它确实仍然是我正在使用的 JDK 的一个错误) )。
谢谢。
java - 新 ImageIcon(url) 失败的错误消息
我尝试加载图像:
ImageIcon imageIcon = new ImageIcon(url);
如果我查询负载状态:
imageIcon.getImageLoadStatus();
它返回MediaTracker.ERRORED
有没有办法得到一条错误消息来说明问题所在?
java - GPU 上的内存大小分配 - opengl 纹理加载问题
我正在从 32 w x 32 高度的图像中加载像素。我加载它们的格式是通过java的ARGB。当我将它绑定到视频卡时,我可以预期视频卡可能会使用大约 32*32*4 字节或 4K 的大小。
同样,1024 w、1024 h 将是 1024*1024*4 = 4MB。
我的理解正确吗?现在我明白所有记忆都去哪儿了!
java - 是否有 100% Java 替代 ImageIO 来读取 JPEG 文件?
我们正在使用 Java2D 调整上传到我们网站的照片的大小,但我们遇到了一个问题(一个看似旧的问题,参见: http: //forums.sun.com/thread.jspa?threadID=5425569) - 一些特殊的 JPEGCMMException
当我们尝试ImageIO.read()
包含其二进制数据的 InputStream时引发 a :
(截断堆栈跟踪的其余部分,即我们的ImageIO.read()
调用、servlet 代码等)
我们将其缩小到使用特定相机拍摄的照片,我选择了一张触发此错误的照片:http: //img214.imageshack.us/img214/5121/estacaosp.jpg。我们注意到这只发生在 Sun 的 JVM 上(在 Linux 和 Mac 上,刚刚在 1.6.0_20 上进行了测试)——一台带有 OpenJDK 的测试机器可以顺利读取相同的照片,这可能是由于 JPEG 读取器的不同实现。
不幸的是,我们无法在生产环境中切换 JVM,也无法使用 ImageMagick ( http://www.imagemagick.org/ ) 等依赖于本机的解决方案。
考虑到这一点,我的问题是:是否存在可以处理链接照片等照片的 ImageIOs JPEG 阅读器的替代品?如果没有,我们可以使用另一种 100% 纯 Java 照片大小调整解决方案吗?
谢谢!