PhantomJS でページの一部をレンダリングするにはどうすればいいですか? 質問する

PhantomJS でページの一部をレンダリングするにはどうすればいいですか? 質問する

Phantom.JS を使用して、個々の HTML 要素を PNG にレンダリングしたいと考えています。これが可能かどうか知っている人はいますか? また、ユーザーがすでに見ているページを Phantom.js を使用してレンダリングするにはどうすればよいでしょうか?

ベストアンサー1

ページの一部のみをレンダリングするには、ページの 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');

質問の 2 番目の部分が理解できません。Phantom.js はヘッドレスなので、ユーザーが見ている実際のディスプレイはありません。

おすすめ記事