[英]when saving canvas image server-side, from a base64 data string,it produce blank image
[英]crop canvas html5 to image as base64 on client side without server-side code
我有一个像http://socialtalent.co/wp-content/uploads/blog-content/so-logo.png这样的图像源,没有 FileReader 对象。
我只需要使用客户端 JavaScript 从不同域裁剪此图像。
当我尝试从画布 (canvas.toDataURL()) 获取源代码时,出现安全错误(不安全操作)。
总之:
有没有办法避免这个错误? 如果我需要为服务器/客户端使用 CORS(crossOrigin),请提供服务器端设置的示例;
是否有任何黑客可以防止此错误?
是否可以在画布上组合 3 种操作(裁剪、旋转、缩放),然后以 Base64 格式获取图像源?
有一个工作示例会很棒。
谢谢你。
不再。 (在服务器上启用 CORS 的链接: http : //enable-cors.org/ )
不再。
是的。
带注释的代码示例: http : //jsfiddle.net/m1erickson/gz6e8/
为 CORS 正确配置服务器后,您可以下载不会像这样污染画布的图像:
var img=new Image();
img.crossOrigin="anonymous";
img.src="http://yourConfiguredServer.com/logo.png";
结果说明:
这不是错误,而是浏览器的安全功能,因为当您加载跨域内容时,您的画布会受到污染。
您可以通过在服务器上设置 http 标头来避免这种情况。 但这一切都归结为特定浏览器如何解释您的代码!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.