Re: How do you crop an image?
phillip.s.powell@gmail.com wrote:
On Mar 25, 4:58 pm, Joshua Cranmer <Pidgeo...@epenguin.zzn.com> wrote:
phillip.s.pow...@gmail.com wrote:
Andrew, Lew, Roedy: If asked how YOU would crop an image, how would
YOU do it, what concepts would you use to ensure an image can be
consistently cropped?
Instead of asking stupid questions and posting stupid code and cannot
translate stupid code, I am going to ask a more fundamental question
that I hope makes more sense.
Please no, no ad hominem attacks.
...Dude, I AM THE ONE WITH THE STUPID QUESTIONS!!!!!!!!!! I am ad-
hominem attacking myself!
The point is that you were not
providing sufficient background with which to explain the problem, and
then you supplied too much.
From the first line of code, it would appear that your problem is that
you tried to cast a generic Image to a BufferedImage.
createImage() does not return BufferedImage's. Sorry.
Which is why I switched coding, because I learned that createImage()
is supposed to return java.awt.Image, but instead it returns
sun.awt.image.ToolkitImage, which cannot be cast to BufferedImage. So
you're unfortunately telling me what I already know.
Toolkit.createImage() and Component.createImage() both return a
java.awt.Image. An Image cannot be cast to a BufferedImage because
BufferedImage extends Image. You could cast a BufferedImage to an Image
if you wanted to.
SSCCE
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
public class test8 {
public static void main(String[] args) throws Exception {
BufferedImage bi =
new BufferedImage(10,10,BufferedImage.TYPE_INT_BGR);
if (bi instanceof Image)
System.out.println("A BufferedImage is an Image");
Image i = (Image)bi;
System.out.println("A BufferedImage can be cast to an Image");
Toolkit t = Toolkit.getDefaultToolkit();
i = t.createImage("saturn.jpg");
if (i instanceof Image)
System.out.println(
"Toolkit.createImage() returns an Image");
if (!(i instanceof java.awt.image.BufferedImage))
System.out.println("An Image is not a BufferedImage");
bi = (BufferedImage)i;
}
}
It is however fairly easy to create a BufferedImage from an Image but it
is crude.
--
Knute Johnson
email s/nospam/knute/