G
Guest
Gast
Hallo
Ich habe 1 bzw 2 Problem mit einem Code aus dem Buche Java ist auch eine Insel:
1.
Ich habe ein Problem mit dem Speichern von Images in JPG oder sonstigen Formaten.
Man kann meines Wissens nur BufferedImage in JPG etc speichern. Was ist aber wenn ich nur ein ImageObjekt habe (zwangsläufig)?
Kann ich es in ein BufferedImage umwandeln (erscheint mir komisch, daja BufferedImage eine Unterklasse ist) oder kann man doch ImageObjekte abspeichern.
2.
FilteredImageSource(getSource, filter); geht bei mir nicht wird als Fehler angezeigt. Was soll eigentlich dieses getSource? new FilteredImageSource() veralngt ja ein ImageProducer und ein Filter.
Und dann möchte das skalierte Bild wieder speichern.
PS: ich muss java.awt.Image schreiben, weil ich nacher das Bild in einem PDF speichere mit Hilfe von iText (Itext hat ein selbst geschriebenes ImageObject)
mfg
mischt
Ich habe 1 bzw 2 Problem mit einem Code aus dem Buche Java ist auch eine Insel:
1.
Ich habe ein Problem mit dem Speichern von Images in JPG oder sonstigen Formaten.
Man kann meines Wissens nur BufferedImage in JPG etc speichern. Was ist aber wenn ich nur ein ImageObjekt habe (zwangsläufig)?
Kann ich es in ein BufferedImage umwandeln (erscheint mir komisch, daja BufferedImage eine Unterklasse ist) oder kann man doch ImageObjekte abspeichern.
2.
FilteredImageSource(getSource, filter); geht bei mir nicht wird als Fehler angezeigt. Was soll eigentlich dieses getSource? new FilteredImageSource() veralngt ja ein ImageProducer und ein Filter.
Code:
java.awt.Image scaled0 = new ImageIcon("test"+i+".jpg").getImage();
java.awt.Image scaled1 = scaled0.getScaledInstance(
(scaled0.getWidth(null) * percent) / 100,
(scaled0.getHeight(null) * percent) / 100,
java.awt.Image.SCALE_SMOOTH );
java.awt.Image scaled2 = scaled1.getScaledInstance(
Toolkit.getDefaultToolkit().getScreenSize().width,
Toolkit.getDefaultToolkit().getScreenSize().height,
java.awt.Image.SCALE_SMOOTH);
public java.awt.Image getScaledInstance(int width, int height, int hints,Image tempimage)
{
ImageFilter filter;
if ((hints & (SCALE_SMOOTH | SCALE_AREA_AVERAGING)) != 0)
filter = new AreaAveragingScaleFilter(width, height);
else
filter = new ReplicateScaleFilter(width, height);
ImageProducer prod;
prod = new FilteredImageSource([color=red]getSource[/color], filter);
return (java.awt.Image) Toolkit.getDefaultToolkit().createImage(prod);
}
Und dann möchte das skalierte Bild wieder speichern.
PS: ich muss java.awt.Image schreiben, weil ich nacher das Bild in einem PDF speichere mit Hilfe von iText (Itext hat ein selbst geschriebenes ImageObject)
mfg
mischt