我在 Javascript 和 PHP 之间以字符串形式发送图像时遇到问题。到目前为止,我有:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAASAQMAAAByySynAAAABlBMVEUAAAD///+l2Z/dAAAAP0lEQVQImWNgPm9gwAAmbM4bH4AQzAdAYiDC/rzxByTi/+f/cIL
作为从 JS 传递到 PHP 的字符串,这已经过验证,因为图像将“按原样”加载到 chrome 中。
那时我正在使用 PHP
$im = imagecreatefromstring($data);
但这只是错误,如果我删除 data:image/png;base64 位,它可以工作,但是当涉及到较大的文件时,这就不起作用了。
我只是想知道我在这里可能错过了什么。
最佳答案
您需要删除从 canvas.toDataURL("image/png;base64"); 吐出的标题
您可以使用 javascript 来完成:
var imgData= canvas.toDataURL("image/png;base64");
var postData = {drawing:imgData.substr(22)};
或者用 php
substr($_POST['drawing'],22);
关于php - imagecreatefromstring 问题与从 javascript 传递的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8650879/