bufferedimage相关内容
希望你们能帮我解决这个问题.我不确定这是 Java 中的错误还是我做错了什么,但我会选择后者. 我想将 BufferedImage 转换为 GIF 图像.然后我希望以字节数组的形式将 GIF 保存在内存中.(我不想将文件保存到磁盘) 程序应该捕获一个屏幕片段(只是为了创建一个快速图像)并使用 ImageIO ImageWriter 和 ByteArrayOutputStream 将其转
..
我在 java 中处理图像,我在本地磁盘中读取和写入图像.我的问题是在写图像时我失去了我阅读的实际图像的质量.它通过图像文件大小将质量从 6.19MB(实际图像大小)文件降低到 1.22MB(使用 ImageIO.write() 写入,这是巨大的损失.我在使用时如何防止这种损失 ImageIO.write(image, "jpg", os); 用于写入图像.请记住,我在这里不需要任何压缩.只
..
提前感谢您的帮助 说明:该程序绘制、显示和保存图像.它的工作原理如下:对象本身扩展了 Frame.在构造函数中,该对象创建一个 BufferedImage,并调用在该图像上绘制的方法.然后,它将图像显示到框架上.最后,它将图像保存到一个文件中(我不在乎它使用什么格式).主程序创建对象,剩下的由它来做. 问题:保存的文件总是有彩色背景!这特别奇怪,因为显示的图像很好.如果我在 Image
..
在我的代码中,我有一个 BufferedImage 加载了 ImageIO 像这样上课: BufferedImage image = ImageIO.read(new File (filePath); 稍后,我想将它保存到一个字节数组,但是 ImageIO.write 方法要求我选择 GIF、PNG 或 JPG 格式来将我的图像写入(如描述在教程这里). 我想选择与原始图像相同的文件类型
..
为了获得图像的高度,我们可以使用 ImageIO.read(new URL("...")).getHeight(). 我的问题: 我是否正确理解此方法是先将图像下载到本地计算机,然后再进行大小计算? 如果是,那么映像的确切下载位置是下载到硬盘上的某些 JVM 缓存还是直接下载到 RAM? 有没有办法不用传输或下载就可以获取图像的高度?但是对服务器有某种请求? 解决方案 首先
..
我从动画 gif 中读取分离的图像,我只需要在 frames[i] 中对它们进行更改,然后将它们设置回文件并与 writer 一起保存为新文件. File file = new File("gif1.gif");ImageReader reader = ImageIO.getImageReadersBySuffix("GIF").next();ImageInputStream in = Ima
..
我正在使用以下代码将图像转换为字节 []. public static byte[] extractBytes (String ImageName) 抛出 IOException {ByteArrayOutputStream baos=new ByteArrayOutputStream();BufferedImage img=ImageIO.read(new File(ImageName));I
..
有人建议的上述答案将我的彩色图像转换为黑白图像.所以这不适合我的问题. File file = new File("path");BufferedImage bufferedImage = ImageIO.read( file ); 这是代码,下面是图像.下载图像并保存在您的电脑中.并尝试使用正确的路径值运行上面的代码,它会在主题中抛出异常 下载图片:https://skydrive.l
..
我有一个来自图像文件的数据 URL,必须将它传递给另一个函数.沿着从 Data-URL 到 BufferedImage 的这条路径,它需要是一个 byteArray. 我的方法如下: String dataUrl;byte[] imageData = dataUrl.getBytes();//沿路径传递 byteArray//从 byteArray 创建 BufferedImageBuff
..
我的 servlet 中有以下代码 response.setContentType("image/gif");String filepath = "PATH//TO//GIF.gif";OutputStream out = response.getOutputStream();文件 f = 新文件(文件路径);BufferedImage bi = ImageIO.read(f);ImageIO
..
我正在按如下方式读取 BufferedImage 中的像素颜色: .....InputStream is = new BufferedInputStream(conn.getInputStream());BufferedImage image = ImageIO.read(is);int color = image.getRGB(x, y);int red = (color & 0x00ff00
..
我一直在和我的好友一起制作 2D 游戏,并且通过一些 Youtube 教程学到了很多关于一些基本游戏开发概念的知识.我正在学习的一件事是精灵(对于那些不知道的人,要渲染到屏幕上的 2D 图像)以及如何在我的游戏中使用它们.我一直在使用 ImageIO.read(this.class.getResource(pathToMySprite)) 但似乎 getResource() 正在为 null 返回
..
我正在尝试访问具有 21 帧的动画 GIF 图像,然后读取第 12 帧(因为它从 0 开始?)帧. import java.awt.image.BufferedImage;导入 java.io.File;导入 java.io.IOException;导入 java.util.ArrayList;导入 java.util.Iterator;导入 java.util.List;导入 javax.im
..
我有一个简单的服务器端代码,它接收一个表示 JPEG 格式图像的字节数组并返回图像的尺寸. public String processImage(byte[] data) {long startTime = System.currentTimeMillis();ByteArrayInputStream stream = new ByteArrayInputStream(data);Buffere
..
错误如下: 线程“main"中的异常 javax.imageio.IIOException:读取 PNG 标头的 I/O 错误!在 com.sun.imageio.plugins.png.PNGImageReader.readHeader(PNGImageReader.java:307)在 com.sun.imageio.plugins.png.PNGImageReader.readMetada
..
使用imageIO,我经常会遇到转换图片文件的问题,覆盖后会丢失所有的EXIF数据.有没有办法不先解压,缓存,再重置就可以保存? 解决方案 ImageIO 本身确实具有此功能,但是您需要使用 ImageReader 而不是 ImageIO.read: ImageReader reader = ImageIO.getImageReadersBySuffix("jpg").next();
..
我希望能够将动画 GIF 作为输入,计算帧数(可能还有其他元数据),并将每个转换为 BufferedImage.我该怎么做? 解决方案 如果您希望所有帧的大小相同(对于优化的 GIF),请尝试以下操作: 尝试{字符串[] imageatt = 新字符串[]{"图像左位置","图像顶部位置","图像宽度",“图像高度"};ImageReader reader = (ImageReader)
..
给定一个图像文件,比如 PNG 格式,如何获得一个 int [r,g,b,a] 数组,表示位于第 i 行第 j 列的像素? 到目前为止,我从这里开始: private static int[][][] getPixels(BufferedImage image) {最终字节 [] 像素 = ((DataBufferByte) image.getRaster().getDataBuffer(
..
我看到很多人都遇到了类似的问题,但是我还没有尝试找到我正在寻找的内容. 所以,我有一个方法可以读取输入图像并将其转换为字节数组: File imgPath = new File(ImageName);BufferedImage bufferedImage = ImageIO.read(imgPath);WritableRaster 光栅 = bufferedImage .getRaste
..
我是 Java 新手,我有一个小程序项目要为学校完成,现在已经完成.当我通过 appletviewer 命令行运行它时它工作正常,但是当我通过浏览器预览它时,图像不显示. 简而言之,我的应用程序必须显示加拿大地图,并且每个省份都有一个按钮.每当点击一个省时,它必须显示该省在地图中被选中,显示该省名称和首都名称.我在 JPanel 中绘制地图图像.就像我说的,当我通过 appletviewer
..