Tuval çizimlerini PNG görüntülerine dönüştürmek için Nihilogic'in "Canvas2Image" JavaScript aracını kullanıyorum. Şimdi ihtiyacım olan bu aracın oluşturduğu base64 dizelerini PHP kullanarak sunucudaki gerçek PNG dosyalarına çevirmektir.
Kısacası, şu anda yaptığım şey Canvas2Image kullanarak istemci tarafında bir dosya oluşturmak, daha sonra base64 kodlu verileri almak ve AJAX kullanarak sunucuya göndermek:
// 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
}
});
Bu noktada, "hidden.php" verilere benzeyen bir veri bloğu alır : image / png; base64, iVBORw0KGgoAAAANSUhEUgAABE ...
Bu noktadan sonra, oldukça şaşırdım. Okuduğum kadarıyla, PHP'nin imagecreatefromstring işlevini kullanmam gerektiğine inanıyorum , ancak aslında base64 kodlu dizeden gerçek bir PNG görüntüsü nasıl oluşturulacağından ve sunucumda sakladığından emin değilim. Lütfen yardım edin!