phantomjs图像宽度没有达到预期

时间:2015-05-22 12:22:49

标签: javascript phantomjs screenshot viewport browser-width

当我使用以下代码使用phanomjs截取屏幕截图时工作正常,我的宽度为1920px,高度对我来说不是问题。

var webPage = require('webpage');
var page = webPage.create();

page.viewportSize = { width: 1920, height: 1080 };
page.open("http://www.google.com", function start(status) {
page.render('google_home.png');
 phantom.exit();

但是,当我将尺寸设置为

page.viewportSize = { width: 320, height: 780 };

生成的图像宽度为602px。

如何使用page.render()函数设置截屏宽度?

2 个答案:

答案 0 :(得分:0)

如果最小页面宽度(或固定宽度)大于视口大小,则PhantomJS将呈现与页面(正文)具有相同宽度的屏幕截图。

您当然可以使用page.clipRect设置相应的尺寸和位置来裁剪屏幕截图。

您还可以试用zoomFactor

答案 1 :(得分:0)

其实我做不到。因为“http://www.google.com”强制将文档的最小宽度设置为大约600px。因此,当我调用page.render()时,它会呈现宽度不是320像素的完整文档。