public Image arrayToImage(int[] bildArray, int width, int height)
{
Image img;
img = createImage(new MemoryImageSource(width, height, bildArray, 0, width));
BufferedImage bf = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB);
bf.createGraphics().drawImage(mg, 0, 0, new Color(10 ,10, 10), null);
return img;
}
wieso deinen String? deinen Image wandelst du um.Steff3de hat gesagt.:und wie bekomme ich meinen String als int-array umgewandelt?
danke schonmal
public int[]imageToArray(Image img)
{
int width = img.getWidth(null);
int height = img.getHeight(null);
int[] array = new int[ width * height];
grabber = new PixelGrabber(img, 0, 0, img.getWidth(null), img.getHeight(null),
array, 0, img.getWidth(null));
try
{
grabber.grabPixels();
}
catch (Exception e)
{
e.printStackTrace();
}
return array;
}
public Image ladeBild(File file)
{
boolean geladen = false;
Image img;
try
{
MediaTracker tracker = new MediaTracker(this);
img = Toolkit.getDefaultToolkit().getImage(file.getPath());
tracker.addImage(img, 0);
tracker.waitForAll();
geladen = true;
return img;
}
catch (Exception e)
{
geladen = false;
return null;
}
}
???Bleiglanz hat gesagt.:was hast du immer mit deinen ints? RTFM
createImage
public Image createImage(byte[] imagedata)
Creates an image which decodes the image stored in the specified byte array.
The data must be in some image format, such as GIF or JPEG, that is supported by this toolkit.
Parameters:
imagedata - an array of bytes, representing image data in a supported image format.
Returns:
an image.
Since:
JDK1.1
wer redet denn von String als Parameter??? Schau doch einfach mal weiter oben!!!Bleiglanz hat gesagt.:irgendwie blick ich jetzt nicht mehr durch?
die Ausgangssituation war doch, dass Bilddaten (binäre Daten) über einen FileReader in einen String (!ABSURD!) eingelesen werden und dann daraus ein Image gemacht werden soll?
wie soll das gehen, ohne über byte[] zu laufen? gibts irgendwo eine Funktion createImage(String rawDataAsString)? - wohl kaum?