书中有这样link StackOverflow上和接受的答案已经问题是“铸造”:Java的转换图像到BufferedImage的
Image image = ImageIO.read(new File(file));
BufferedImage buffered = (BufferedImage) image;
在我的节目我尝试:
final float FACTOR = 4f;
BufferedImage img = ImageIO.read(new File("graphic.png"));
int scaleX = (int) (img.getWidth() * FACTOR);
int scaleY = (int) (img.getHeight() * FACTOR);
Image image = img.getScaledInstance(scaleX, scaleY, Image.SCALE_SMOOTH);
BufferedImage buffered = (BufferedImage) image;
可惜的是我得到运行时间错误:
sun.awt.image.ToolkitImage cannot be cast to java.awt.image.BufferedImage
显然铸造不起作用。
问题是:什么是(或有)将Image转换为BufferedImage的正确方法?
, 试试这个 试试这个[http://stackoverflow.com/questions/4216123/如何按比例的-A-的BufferedImage] [1] [1]:http://stackoverflow.com/questions/4216123/how-to-scale-a-buffere dimage – user902383
为了记录,这不是说这个的编译器。您实际上看到一个运行时错误...不是编译错误。 –
你说得对。感谢您指出了这一点。我将相应地编辑问题。 –