我想使用Phantom.JS将单个HTML元素呈现为PNG。有人知道这是否可能吗?另外,我将如何使用Phantom.js呈现用户已经在查看的页面?

最佳答案

要仅呈现页面的一部分,您需要为页面设置clipRect属性,然后呈现它。

var clipRect = document.querySelector(selector).getBoundingClientRect();
page.clipRect = {
    top:    clipRect.top,
    left:   clipRect.left,
    width:  clipRect.width,
    height: clipRect.height
};
page.render('capture.png');

我不明白您问题的第二部分。 Phantom.js是无头的,这意味着没有用户正在查看的实际显示。

10-04 16:35