2012-11-01 147 views
4

我有一个带有图像的html5画布。人民可以使用javascript编辑/调整图像。毕竟他们必须有一个选择,可以在Facebook墙上发布该图片。由于我所知,我们能够满足这样将html5画布保存为服务器中的图像

Save Canvas data as image in to my server  -->  Post to Facebook with its image URL --> Delete the image on call back. 

首先的要求是这个假设是正确的,第二个是

如何使用一个按钮的JavaScript的HTML 5画布保存为PNG图像点击? 这可能吗?

回答

4

您可以使用JavaScript画布保存为特定图像格式

var mycanvas = document.getElementById("whatever"); //get your canvas 
var image = mycanvas.toDataURL("image/png"); //Convert the canvas to image, currently converting to .png 
+2

+1 - 但值得注意的是,由此产生的图像是base64编码,并将比二进制编码的PNG更大。在发送给FB之前,在服务器上本地编码它可能是一个好主意。 – techfoobar

+0

如果是这样我不能上传到Facebook?任何问题? – ramesh

+1

@techfoobar同意.. –

2

首先,你必须使用Javascript功能来您的图像转换为Base64格式:

var canvas = document.getElementById("canvas"); 
var data = canvas.toDataURL("image/jpeg"); 

现在通过PHP转换成将其映像并保存到服务器

file_put_contents("myimage.jpg", base64_decode(explode(",", $_GET['data'])[1])); 

这就是全部

相关问题