Saya menggunakan alat JavaScript "Canvas2Image" Nihilogic untuk mengonversi gambar kanvas ke gambar PNG. Yang saya butuhkan sekarang adalah untuk mengubah string base64 yang dihasilkan alat ini, menjadi file PNG aktual di server, menggunakan PHP.
Singkatnya, apa yang saya lakukan saat ini adalah membuat file di sisi klien menggunakan Canvas2Image, kemudian mengambil data yang di-encode base64 dan mengirimkannya ke server menggunakan AJAX:
// Generate the image file
var image = Canvas2Image.saveAsPNG(canvas, true);
image.id = "canvasimage";
canvas.parentNode.replaceChild(image, canvas);
var url = 'hidden.php',
data = $('#canvasimage').attr('src');
$.ajax({
type: "POST",
url: url,
dataType: 'text',
data: {
base64data : data
}
});
Pada titik ini, "hidden.php" menerima blok data yang terlihat seperti data: image / png; base64, iVBORw0KGgoAAAANSUhEUgAABE ...
Mulai saat ini, saya cukup bingung. Dari apa yang saya baca, saya percaya bahwa saya seharusnya menggunakan fungsi imagecreatefromstring PHP , tapi saya tidak yakin bagaimana benar-benar membuat gambar PNG yang sebenarnya dari string yang dikodekan base64 dan menyimpannya di server saya. Tolong bantu!