我正在使用Nihilogic的“Canvas2Image” JavaScript工具将canvas绘图转换为PNG图像。现在我需要做的是,使用PHP将该工具生成的base64字符串转换为实际的PNG文件并保存在服务器上。
简而言之,我目前所做的是在客户端使用Canvas2Image生成一个文件,然后通过AJAX检索base64编码数据并将其发送到服务器:
// 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...
从这一点开始,我有些困惑。从我所了解的信息中,我相信我应该使用PHP的imagecreatefromstring函数,但我不知道如何从base64编码的字符串中实际创建PNG图像并将其存储在我的服务器上。 请帮助!