HTML5: Canvas.toDataURL() gibt immer PNG statt JPG zurück
Frage von Gast | Letztes Update am 06.04.2021 | Erstellt am 21.09.2016
Ich benutze die Funktion .toDataURL() eines HTML5-Canvas-Elements, um das Bild als BASE64-kodierten String zu erhalten. Das Problem ist, dass ich, egal was ich mache, immer das Format PNG erhalte, auch wenn ich eigentlich ein JPG haben möchte (der String beginnt also mit data:image/png;base64;).
Probiert habe ich bisher folgendes:
var dataURL = canvas.toDataURL("image/jpeg", 1.0); var dataURL = canvas.toDataURL("image/jpeg"); var dataURL = canvas.toDataURL(); var dataURL = canvas.toDataURL("image/png");
Soweit ich weiß sollte mir doch eigentlich nur die letzte Zeile ein PNG-Bild liefern. Was mache ich falsch?
Ähnliche Themen
Bild vor dem Upload im Browser verkleinern
Tutorial | 5 Kommentare
jQuery: HTML5 Canvas mit Ajax an Server senden
Tutorial | 0 Kommentare
HTML5 Canvas als Bild an Server senden und speichern
Tutorial | 0 Kommentare
HTML5 Canvas: Einsteiger Tutorial Teil 1 - Einführung
Tutorial | 0 Kommentare
HTML5 Canvas: Einsteiger Tutorial Teil 3 - Rechtecke und Kreise
Tutorial | 0 Kommentare
HTML5 Canvas: Einsteiger Tutorial Teil 4 - Text auf Canvas schreiben
Tutorial | 0 Kommentare
HTML5 Canvas: Einsteiger Tutorial Teil 2 - Linien zeichnen
Tutorial | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.
Das Default-Format von toDataURL() ist PNG.
Daher sollten die beiden letzten Zeilen beide das Format PNG liefern (keine Angabe über das Format oder explizit image/png).
PNG war auch das erste Format, was von den Browsern unterstützt wurde. Daher gibt es so manchen Browser, der tatsächlich nur das PNG-Format unterstützt und daher auch immer PNG zurückgibt. Das ist insoweit auch richtig, denn PNG sollte laut Spezifikation immer dann das Format der Wahl sein, wenn das gewünschte und übergebene Format nicht unterstützt wird.
Ich würde an deiner Stelle also einmal ein Browser-Update ausprobieren und ist dann noch einmal versuchen. Vielleicht benutzt du noch eine alte Version, die nur PNG kann.
Letztes Update am 06.04.2021 | Erstellt am 21.09.2016