node.js - 如何使用 phantomjs 和 Node 截取 PDF 的屏幕截图?

标签 node.js phantomjs

我是 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 元素的屏幕截图。

关于node.js - 如何使用 phantomjs 和 Node 截取 PDF 的屏幕截图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53437124/

相关文章:

node.js - 如何在es2015中导入rethinkdbdash

ajax - Phantomjs、ajax 内容和 JS 内联

phantomjs - CasperJS 文件下载在 30 秒后超时

javascript - Highcharts 服务器端渲染绘制一个神秘的半圆形 donut 形状

java - 无法使用 phantomjs 驱动程序运行 selenium 脚本

node.js - PhantomJS 错误

node.js - Azure 存储队列 - Cosmos DB 输出 - 错误处理

javascript - Edge.js 从 Expandoobject 转换为字符串

javascript - Node.js如何安装learnyounode?

node.js - app.post() 不适用于 Express