我如何使用 phantomjs 和节点截取 PDF 的屏幕截图?

How do i take a screenshot of a PDF using phantomjs and node?

我是 phantomjs 和 node 的新手,所以基本上如果我使用以下代码:

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

webpage.open('https://www.google.com/', function() {
      webpage.render('pdflala.png');
      phantom.exit();
});

我可以获取网页的屏幕截图,但是无论如何我可以使用 phantomjs 获取 PDF 的屏幕截图吗?

以下代码如果用于获取 PDF 的屏幕截图,将显示空白图像。

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

webpage.open('https://www.link-assistant.com/pdf/SEO_in_2018.pdf', function() {
      webpage.render('pdflala.png');
      phantom.exit();
});

如何使用 phantomjs 和 node 截取 PDF 的屏幕截图?

Phantomjs没有pdf渲染引擎,可以将页面保存为pdf格式,但是不能渲染pdf。

您最好的选择是使用 pdf.js,它具有此功能,这意味着它可以将 pdf 呈现为 HTML canvas.

然后您可以使用 phantomjs 截取 canvas 元素的屏幕截图。