
- 文件系统模块
- PhantomJS - 属性
- PhantomJS - 方法
- 系统模块
- PhantomJS - 属性
- Web 服务器模块
- PhantomJS - 属性
- PhantomJS - 方法
- 其它
- 命令行界面
- PhantomJS - 屏幕捕获
- PhantomJS - 页面自动化
- PhantomJS - 网络监视
- PhantomJS - 测试
- PhantomJS - REPL
- PhantomJS - 示例
- PhantomJS 有用资源
- PhantomJS - 快速指南
- PhantomJS - 有用资源
- PhantomJS - 讨论
PhantomJS - render()
Render 可帮助采用图像缓冲区并按指定格式保存。支持的格式包括 PDF、PNG、JPEG、BMP、PPM、GIF(支持取决于所用的 QT 编译)。
质量
它支持 0 到 100 之间的整数。主要用于 JPEG 和 PNG 格式。对于 JPEG,它以百分比使用。级别 0 将生成非常小且质量很差的文件,而 100 将生成高质量的文件。默认值为 75。对于 PNG,它将其设为压缩级别,其中 0 为小文件,100 为大文件。
你可以将 clipRect、viewportSize、paperSize 与 render 方法结合使用,以根据需要以各种格式渲染图像缓冲区。
语法
其语法如下 -
wpage.render(filename, {format: PDF|PNG|JPEG|BMP|PPM|GIF, quality: '100'});
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
示例:图片
我们举个例子来说明如何使用 render() 方法。
var wpage = require('webpage').create(); wpage.viewportSize = { width: 1920, height: 1080 }; wpage.open("http://www.google.com", function start(status) { wpage.render('image.jpeg', {format: 'jpeg', quality: '100'}); phantom.exit(); });
以上程序将生成以下 output。

示例:PDF
我们考虑另一个示例。
var wpage = require('webpage').create(); var url = "https://jqueryjs.cn/download/"; var output = "display.pdf"; wpage.paperSize = { width: '600px', height: '1500px', margin: { 'top':'50px', 'left':'50px', 'rigth':'50px' }, orientation:'portrait', header: { height: "1cm", contents: phantom.callback(function(pageNumber, nPages) { return "<h5>Header <b>" + pageNumber + " / " + nPages + "</b></h5>"; }) }, footer: { height: "1cm", contents: phantom.callback(function(pageNumber, nPages) { return <h5>Footer <b>" + pageNumber + " / " + nPages + "</b></h5>"; }) } } wpage.open(url, function (status) { if (status !== 'success') { console.log('Page is not opening'); phantom.exit(); } else { wpage.render(output); phantom.exit(); } });
以上程序将生成以下 output。
Saves as display.pdf with header and footer.
phantomjs_webpage_module_methods.htm
广告