我正在创建使用svg掩码的d3的可视化,我正在尝试使用casper js获取屏幕截图。它通常可以正常工作,除非它没有正确渲染蒙版;它显示了所有层,而不仅仅是被屏蔽的层。这是casper代码:
var casper = require('casper').create();
casper.start('http://localhost:3000', function() {
this.captureSelector('bicycles.png', 'svg');
});
casper.run();
其他人有这个问题吗?
谢谢,汤姆
答案 0 :(得分:0)
我不知道它是否会有所帮助,但在我的测试中,我总是设置视口大小,然后在运行任何其他代码之前添加延迟。延迟的一个原因是因为我们使用knockout并且在调用'start'函数时尚未完全创建DOM元素。
所以你的测试看起来像这样:
var casper = require('casper').create();
casper.start('http://localhost:3000', function () {
casper.viewport(1024, 768);
});
casper.wait(1000); // Wait for knockout bindings and animations...
casper.then(function () {
this.captureSelector('bicycles.png', 'svg');
});
casper.run();
可能不会帮助你,但值得一试?