网上有很多如何将canvas图像保存成图片并下载的方法,但这些方法都是将图片保存到客户端,而我们的签名需求是需要将canvas的内容保存到服务器端,如何实现? 其实很简单,看完下面 […]
网上有很多如何将canvas图像保存成图片并下载的方法,但这些方法都是将图片保存到客户端,而我们的签名需求是需要将canvas的内容保存到服务器端,如何实现?
其实很简单,看完下面的这段PHP代码,相信你也会觉得很简单:
<?php // requires php5 define('UPLOAD_DIR','images/'); $img = $_POST['img']; $img = str_replace('data:image/png;base64,','', $img); $img = str_replace(' ','+', $img); $data = base64_decode($img); $file = UPLOAD_DIR . uniqid() .'.png'; $success = file_put_contents($file, $data); print $success ? $file :'Unable to save the file.';?>
从网页上传到服务器端的图片是base64_encode转码过的Data URL格式,数据在服务器端用base64_decode进行解码,保存成文件。
是不是觉得很简单呢?