Hallo miteinander!
Ich hab hier ein kleines Problem mit transparenten PNGs. Im Firefox sieht alles schick aus, aber wenn ich mir die PNGs im IE anzeigen lasse, dann haben sie einen weißen Hintergrund.
Die Grafik mal im Photoshop aufgemacht, zeigt einen wunderbaren transparenten Hintergrund. Wenn ich mit Photoshop selbst ein PNG erstelle, dann kann der IE es auch transparent darstellen.
Mir ist aufgefallen, daß Photoshop diese beiden Dateien unterschiedlich betitelt: Das manuelle PNG heißt "test.png @ 100% (indiziert)" und das generierte PNG hat als Titel "test.png @ 100% (Eben 0, RGB)".
Ich hab das Gefühl, beim Generieren des PNGs fehlt mir irgendein Schritt, aber ich blick nicht welcher? Photoshopisch gesprochen müsste der Schritt sein: "Für Web speichern ...". Aber hier in Java ... ? ???:L Hat jemand von Euch eine Idee?
So in etwa wird bisher das PNG gebaut:
Muß ich nicht noch irgendwie sagen, daß das Bild nun "indiziert" werden soll, bzw. woher weiß er, wo die Transparenz ist?
Viele Grüße
Fats
Ich hab hier ein kleines Problem mit transparenten PNGs. Im Firefox sieht alles schick aus, aber wenn ich mir die PNGs im IE anzeigen lasse, dann haben sie einen weißen Hintergrund.
Die Grafik mal im Photoshop aufgemacht, zeigt einen wunderbaren transparenten Hintergrund. Wenn ich mit Photoshop selbst ein PNG erstelle, dann kann der IE es auch transparent darstellen.
Mir ist aufgefallen, daß Photoshop diese beiden Dateien unterschiedlich betitelt: Das manuelle PNG heißt "test.png @ 100% (indiziert)" und das generierte PNG hat als Titel "test.png @ 100% (Eben 0, RGB)".
Ich hab das Gefühl, beim Generieren des PNGs fehlt mir irgendein Schritt, aber ich blick nicht welcher? Photoshopisch gesprochen müsste der Schritt sein: "Für Web speichern ...". Aber hier in Java ... ? ???:L Hat jemand von Euch eine Idee?
So in etwa wird bisher das PNG gebaut:
Code:
BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = img.createGraphics();
Font raw_font = Font.createFont(Font.TRUETYPE_FONT, new File("path/to/font/arial.ttf"));
Font ttf = raw_font.deriveFont(15f);
g2d.setFont(ttf);
g2d.setColor(Color.RED);
g2d.drawString("Hallo World",20,10);
g2d.dispose();
ImageIO.write(img, "png", new File("myfile.png"));
Muß ich nicht noch irgendwie sagen, daß das Bild nun "indiziert" werden soll, bzw. woher weiß er, wo die Transparenz ist?
Viele Grüße
Fats