Bonjour,
j'essaie d'enregistrer le rendu d'une image svg vers png ou jpg mais le fichier toujours corrompu.
l’affichage de l'image c'est OK.
1 2 3 4 5 6
| var svgElement = document.getElementById('chartScores');
var svgString = new XMLSerializer().serializeToString(svgElement);
var decoded = unescape(encodeURIComponent(svgString));
var base64 = btoa(decoded);
var imgSource = `data:image/svg+xml;base64,${base64}`;
document.querySelector('#datascore3').src = imgSource; |
mais en php quelque chose manque car l'image est corrompu.
file_put_contents('datascore1.png', base64_decode($datascore1));
de cette façon l'image ne s'enregistre pas.
1 2 3 4 5 6 7 8
| $filename = 'datascore1.png';
if (file_exists($filename)) {
unlink($filename);
}
$datascore1 = base64_decode($datascore1);
$img = imagecreatefromstring($datascore1);
imagepng($img, $filename);
file_put_contents($filename, ($datascore1)); |
si vous avez une idée pour m'aider a débloquer ceci.
merci
Partager