我正在按照此示例将画布保存到 PNG 文件中。http://greenethumb.com/article/1429/user-friendly-image-saving-from-the-canvas/
我的问题:下载的文件已损坏,当我在记事本中打开它时,它具有以下模式:
- HTML CODE(对应PHP文件)
- ASCII CHARACTERS(我认为对应于 PNG 文件)
<body><html>
如果我删除 #1 和 #3 并将文件保存在本地,我会得到一个有效的 PNG 图像。
我完全按照上面的例子做,但我的结果是不同的。为什么 dataURL 会有任何其他信息。除了画布本身?
谢谢。
编辑
<?php
$imdata = $_POST["imgdata"];
//run this code only when there is long POST data
if(strlen($imdata)>1000) {
//removing the "data:image/png;base64," part
$imdata = substr($imdata,strpos($data,",")+1);
// put the data to a file
file_put_contents('image.png', base64_decode($imdata));
//force user to download the image
if(file_exists("image.png")){
header('Content-type: image/png');
header('Content-Disposition: attachment; filename="image.png"');
readfile('image.png');
}
}
?>