JPG zu PNG konvertieren

Thaflasher

Mitglied
Hi Forum,

derzeit beschäftige ich mich mit einem Konverter der jpg-Bilddateien in png-Bilddateien konvertiert. (in Java)

Mit einem BufferedImage lässt sich das ganz einfach umwandeln. Auf die Fehlerbehandlung bin ich soweit noch nicht eingegangen da es mir erst um die Richtigkeit des Alg. geht.

Java:
private File originalFile = new File("Speicherort/Dateiname.jpg");
private File destinationFile = new File("Speicherort/neuerDateiname.png");
	
public void convertIt() throws IOException{
		BufferedImage image = ImageIO.read(originalFile);
		ImageIO.write(image, "png", destinationFile);
}

Nun meine Frage:

Das Ergebnis, welches ich erhalte, ist immer ein Bild mit 24-Bit Farbtiefe, wo PNG doch 32 bit haben sollte.
Wenn ich Paint benutze und das jpg-bild mit "speichern unter" als png abspeichere, erhalte ich ein Bild mit 32-Bit farbtiefe.


Wie erhalte ich die fehlenden 8 Bit? ???:L

Ich weiss, dass diese fehlenden 8 Bit die Transparenz darstellt, welches jpg nicht hat.

Gibt es eine Formel die diese Transparenz ausrechnet und auf das Bildüberträgt so das ich die "richtige" Schärfe erhalte?


Leider ist die Bildverarbeitung nicht mein Spezialgebiet, weshalt die Fragen evtl. dumm erscheinen. :(

Danke im voraus
 

AlexSpritze

Bekanntes Mitglied
Na, wenn die fehlenden 8-Bit die Transparenz sind, brauchst du diese doch nicht im PNG-Bild, weil sie eben nicht im JPEG-Bild sind. Das wäre doch nur Verschwendung von Speicher, sich über das ganze Bild zu "merken", dass dort keine Transparenz vorhanden ist.

Aber wahrscheinlich könntest/müsstest du explizit konvertieren. Wenn du das PNG wieder in ein BufferedImage einliest, was ergibt dann der Aufruf .getType() auf dem BufferedImage? Da gibt es verschiedene Typen, wie die BufferedImage.TYPE_*-Flags anzeigen.

weshalt die Fragen evtl. dumm erscheinen.

Es gibt keine dummen Fragen ;)
 

Marco13

Top Contributor
Es gibt keine dummen Fragen ;)

Ich sag' ja immer: Es gibt keine dummen Fragen - aber einen Haufen beharrlicher begriffstutziger Idioten :D

Mal im ernst: Du hast von "Schärfe" geredet. Geht es wirklich darum, diese fehlenden 8 bit für die Transparenz mitzuspeichern (das geht so direkt nämlich nicht), oder ist es lediglich so, dass die Bildqualität beim Speichern als JPG nicht so hoch ist, wie gewünscht? (D.h. dass es ein bißchen krisselig und verwaschen aussieht)? Bei JPG kann man den Komprimierungsgrad einstellen, und wenn der zu hoch ist, wird natürlich die Bildqualität schlechter. Bei ImageIO gibt es, wenn man es so verwendet, wie im Beispiel, eine "Standardkomprimierung", die vielleicht einfach zu hoch sein könnte. In diesem Fall müßte man an den ImageWriteParams rumschrauben...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
izoards doc to pdf Konvertieren... Allgemeine Java-Themen 43
M Java 8 nach Java 6 konvertieren Allgemeine Java-Themen 7
J Java zu C# konvertieren? Allgemeine Java-Themen 4
K Methodenaufruf mit String / String zu Objekt konvertieren Allgemeine Java-Themen 8
RalleYTN float in WORD konvertieren Allgemeine Java-Themen 1
RalleYTN JOGL Texture in BufferedImage konvertieren Allgemeine Java-Themen 1
C String zu Int konvertieren Allgemeine Java-Themen 9
P List<Type> Konvertieren in List<List<Type>> Allgemeine Java-Themen 3
RalleYTN Audiodatein(.ogg/.wav) in Text konvertieren Allgemeine Java-Themen 0
M ArrayList mit verschiedenen Datentypen in String konvertieren Allgemeine Java-Themen 10
B .txt Datei in einen kompletten String konvertieren Allgemeine Java-Themen 20
C String in double[][] konvertieren! Allgemeine Java-Themen 5
R MS Word in PDF konvertieren Allgemeine Java-Themen 1
M ArrayList<Foo> in ein Foo[] konvertieren? Allgemeine Java-Themen 8
P Datentypen String-Daten zu Byte-Zahlen konvertieren - Komme nicht weiter nach vielem versuchen :-/ Allgemeine Java-Themen 7
M Datentypen ArrayList in Integer konvertieren Allgemeine Java-Themen 3
D Programm in JApplet konvertieren... Allgemeine Java-Themen 4
K Image zu BufferedImage konvertieren Allgemeine Java-Themen 9
J String mit "," in Double Wert konvertieren Allgemeine Java-Themen 7
H Input/Output Binäre Daten konvertieren, Output hat Zeilenumbrüche?? Allgemeine Java-Themen 9
S byte [] in string und zurück konvertieren Allgemeine Java-Themen 2
S Millisekunden in Zeitcode konvertieren. Unerwarteter Effekt..? Allgemeine Java-Themen 8
P Tonspur aus Video extrahieren und konvertieren Allgemeine Java-Themen 2
R byte[] to String Konvertieren Allgemeine Java-Themen 14
A Input/Output Buffered Image zu Byte Array und zurück konvertieren Allgemeine Java-Themen 4
S Zahl konvertieren [Internationalisierung l10n, l18n] Allgemeine Java-Themen 4
L hunderstel Sekunden in mm:ss:hshs konvertieren Allgemeine Java-Themen 4
T Interger in String konvertieren Erklärung benötigt Allgemeine Java-Themen 11
R Moeglichst viele Datumsstrings in Date Objekte konvertieren? Allgemeine Java-Themen 3
P PNG 32 Bit zu 16Bit konvertieren... Allgemeine Java-Themen 4
Daniel_L RegEx: UBB in HTML konvertieren, Problem Verschachtelung Allgemeine Java-Themen 3
A Performance: byte[] in byte[][][] konvertieren Allgemeine Java-Themen 2
2 MP3 in Wav konvertieren. Allgemeine Java-Themen 5
K Zeichensatz in UTF8 konvertieren Allgemeine Java-Themen 7
T Konvertieren zu gültigen Dateinamen Allgemeine Java-Themen 10
S List<Double> oder Double[] in double[] zu konvertieren Allgemeine Java-Themen 6
B numerisch in alpanumerisch konvertieren Allgemeine Java-Themen 3
Z Uralt-Applet in JFrame Anwendung konvertieren Allgemeine Java-Themen 12
S Integer zu int konvertieren - JUnit Allgemeine Java-Themen 12
F Unicode zu ASCII konvertieren Allgemeine Java-Themen 5
P Sämtliche Zeichensätze nach UTF-8 konvertieren Allgemeine Java-Themen 6
B String in Hex konvertieren: Problem Allgemeine Java-Themen 9
F Code konvertieren Allgemeine Java-Themen 4
G Array/String aus Request wieder in Array konvertieren Allgemeine Java-Themen 2
M Wave file ins Ogg Format konvertieren! Allgemeine Java-Themen 3
A DOC in TIFF konvertieren Allgemeine Java-Themen 2
P word zu pdf konvertieren Allgemeine Java-Themen 5
G Konvertieren: Wikipedia-Formatierung -> HTML Allgemeine Java-Themen 5
cowabunga1984 Library um TIF in PDF zu konvertieren Allgemeine Java-Themen 2
S int nach Ascii konvertieren Allgemeine Java-Themen 2
F Wav to mp3 konvertieren Allgemeine Java-Themen 3
G Datum konvertieren Allgemeine Java-Themen 14
R Fehler in WindowsXP oder Java? - double in int konvertieren Allgemeine Java-Themen 10
G Benutzereingaben konvertieren(Exponentialfunktion) Allgemeine Java-Themen 9
K Object nach Vector konvertieren Allgemeine Java-Themen 3
T Musikdateien in ein anderes Musikdateienformat konvertieren Allgemeine Java-Themen 5
T ArrayList in String[] konvertieren. Allgemeine Java-Themen 3
M Value als String in beliebige Klasse konvertieren Allgemeine Java-Themen 18
G Bild von RGB in Grayscale konvertieren Allgemeine Java-Themen 2
T Datum konvertieren Allgemeine Java-Themen 3
R HTML Seiten in formatierte Textseiten konvertieren Allgemeine Java-Themen 3
R StringWriter konvertieren in einen String !!! Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben