我正在使用 Nihilogic 的“Canvas2Image”JavaScript 工具将画布绘图转换为 PNG 图像。我现在需要的是使用 PHP 将这个工具生成的那些 base64 字符串转换为服务器上的实际 PNG 文件。
简而言之,我目前正在做的是使用 Canvas2Image 在客户端生成一个文件,然后检索 base64 编码的数据并使用 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...
从这一点开始,我几乎被难住了。根据我的阅读,我相信我应该使用 PHP 的imagecreatefromstring函数,但我不确定如何从 base64 编码的字符串实际创建一个实际的 PNG 图像并将其存储在我的服务器上。请帮忙!