尝试读取缓冲的 bmp 图像,然后通过压缩转换为 jpeg。缓冲的图像行有问题。谢谢,任何帮助表示赞赏。
public void jpegconvert(String Fname, String Crate)
{
BufferedImage image = ImageIO.read(Fname);
Iterator<ImageWriter> i = ImageIO.getImageWritersByFormatName("jpeg");
// Just get the first JPEG writer available
ImageWriter jpegWriter = i.next();
// Set the compression quality to 0.8
ImageWriteParam param = jpegWriter.getDefaultWriteParam();
param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
param.setCompressionQuality(0.8f);
// Write the image to a file
FileImageOutputStream out = new FileImageOutputStream(new File("newimage.jpg"));
jpegWriter.setOutput(out);
jpegWriter.write(null, new IIOImage(image, null, null), param);
jpegWriter.dispose();
out.close();
}
}
悬停错误是这样说的:
no suitable method found for read(String)
method ImageIO.read(ImageInputStream) is not applicable
(actual argument String cannot be converted to ImageInputStream by method invocation conversion)
method ImageIO.read(URL) is not applicable
(actual argument String cannot be converted to URL by method invocation conversion)
method ImageIO.read(InputStream) is not applicable
(actual argument String cannot be converted to InputStream by method invocation conversion)
method ImageIO.read(File) is not applicable
(actual argument String cannot be converted to File by method invocation conversion)