ฉันใช้เครื่องมือ JavaScript "Canvas2Image" ของ Nihilogic เพื่อแปลงภาพวาดผ้าใบเป็นรูปภาพ PNG สิ่งที่ฉันต้องการตอนนี้คือการเปลี่ยนสตริง base64 ที่เครื่องมือนี้สร้างเป็นไฟล์ PNG จริงบนเซิร์ฟเวอร์โดยใช้ PHP
ในระยะสั้นสิ่งที่ฉันกำลังทำคือการสร้างไฟล์ในฝั่งไคลเอ็นต์โดยใช้ Canvas2Image จากนั้นดึงข้อมูลที่เข้ารหัส 64 ฐานและส่งไปยังเซิร์ฟเวอร์โดยใช้ 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
}
});
ณ จุดนี้ "hidden.php" ได้รับบล็อกข้อมูลที่ดูเหมือนdata: image / png; base64, iVBORw0KGgoAAAANSUhEUgAABE ...
จากจุดนี้ไปฉันก็นิ่งงันมาก จากสิ่งที่ฉันได้อ่านฉันเชื่อว่าฉันควรจะใช้ฟังก์ชั่นimagecreatefromstringของ PHP แต่ฉันไม่แน่ใจว่าจะสร้างภาพ PNG จริงจากสตริงที่เข้ารหัสแบบ 64 และเก็บไว้บนเซิร์ฟเวอร์ของฉันได้อย่างไร โปรดช่วยด้วย!