我想从url中获取网页的快照。url是动态的html网页。基本上,我们需要该网页的img。
我想把html页面转换成c#格式的图片,但是不行。我首先使用streamreader读取html,然后使用NReco.ImageGenerator尝试转换为字节,最后是图像。这不管用。最后,我尝试从html网页内部使用javascript将html转换为canvas。
function report() {
let region = document.querySelector("body");
html2canvas(
$('body'),
{allowTaint: true, logging: true,'onrendered': function (canvas)
{}}).then( //getting problem here at then
function (canvas) {
let jpgUrl = canvas.toDataURL();
console.log(jpgUrl);
var text = "bottom-right Brochure1";
var imageName = text + '.jpg';
download(jpgUrl,imageName, "image/png");
}代码解释-它将使用js获取html页面中的body元素的快照。获取该url并从该url创建画布。并自动下载。但我面临一个问题-“html2canvas(...),then is not a function”..我不知道为什么会这样。请帮帮忙。
发布于 2019-08-17 17:17:55
由于所有现代浏览器中的跨域资源共享(CORS)限制,这不能完全在客户端完成。你需要在服务器端做一些事情来完成这件事。在使用NodeJS的服务器上用javascript实现这一点,有几个npm包可以提供帮助,比如: node- server -screenshot,PhantomJS等
https://stackoverflow.com/questions/57472504
复制相似问题