c html2canvas,GitHub - brcontainer/html2canvas-csharp-proxy: C# Proxy html2canvas (aspx)

本文介绍了一个使用C#编写的html2canvas代理服务(html2canvas-proxy-csharp),该服务允许用户通过不同的服务器、端口和协议(HTTP, HTTPS)使用html2canvas.js,解决了跨域加载图片时出现的安全错误问题。

html2canvas-proxy-csharp 0.0.6

C# Proxy html2canvas

This script allows you to use html2canvas.js with different servers, ports and protocols (http, https),

preventing to occur "tainted" when exporting the for image.

Others scripting language

You do not use ASP.NET, but need html2canvas working with proxy, see other proxies:

###Problem and Solution###

When adding an image that belongs to another domain in and after that try to export the canvas

for a new image, a security error occurs (actually occurs is a security lock), which can return the error:

SecurityError: DOM Exception 18

Error: An attempt was made to break through the security policy of the user agent.

Follow

I ask you to follow me or "star" my repository to track updates

Usage

html2canvas ashx (c#) proxy

//

(function() {

window.onload = function() {

html2canvas(document.body, {

"logging": true, //Enable log (use Web Console for get Errors and Warings)

"proxy":"html2canvasproxy.ashx",

"onrendered": function(canvas) {

var img = new Image();

img.onload = function() {

document.body.appendChild(img);

};

img.error = function() {

if(window.console.log) {

window.console.log("Not loaded image from canvas.toDataURL");

} else {

alert("Not loaded image from canvas.toDataURL");

}

};

img.src = canvas.toDataURL("image/png");

}

});

};

})();

//]]>

google maps static

Using Web Console

If you have any problems with the script recommend to analyze the log using the Web Console from your browser:

Get NetWork results:

An alternative is to diagnose problems accessing the link directly:

http://[DOMAIN]/[PATH]/html2canvasproxy.php?url=http%3A%2F%2Fmaps.googleapis.com%2Fmaps%2Fapi%2Fstaticmap%3Fcenter%3D40.714728%2C-73.998672%26zoom%3D12%26size%3D800x600%26maptype%3Droadmap%26sensor%3Dfalse%261&callback=html2canvas_0

Replace [DOMAIN] by your domain (eg. 127.0.0.1) and replace [PATH] by your project folder (eg. project-1/test), something like:

http://localhost/project-1/test/html2canvasproxy.php?url=http%3A%2F%2Fmaps.googleapis.com%2Fmaps%2Fapi%2Fstaticmap%3Fcenter%3D40.714728%2C-73.998672%26zoom%3D12%26size%3D800x600%26maptype%3Droadmap%26sensor%3Dfalse%261&callback=html2canvas_0

.NET Framework compatibility

From version 0.0.4 has become the code compatible with older versions of the .net framework, being compatible with version .net framework 2.0+

Alternatives for C#(C Sharp)

You are not using html2canvas but need a similar solution?

See simpleHttpProxy:

Changlog

html2canvas-csharp-proxy 0.0.5 and 0.0.6

Added support to HTTP Basic access authentication

Added support to use data URI scheme in callback

Added support to SVG images

Added support to requests/response without "Content-Length"

Added detection if the "Content-Length" header is equal to "0" (Content-Length: 0)

Moved "setup vars" to "Class"

Removed unecessary "fullurl = fullurl"

Removed "must-revalidate" header

Remove charset in "mimetype"

Fixed bug in detecting if "callback" and "url" are undefined (GET params)

Fixed Ascii2Inline function (version 0.0.6)

Fixed size in buffer (sometimes had negative number and the buffer causing an error in the script) (version 0.0.6)

Replace "tabs" by space (4 size) (version 0.0.6)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值