Render 有助於獲取圖像緩衝區並按照指定的格式保存它。支持的格式有 PDF、PNG、JPEG、BMP、PPM、GIF(支持取決於所用 QT 的構建)。
質量
它支持 0 到 100 之間的整數。它主要用於 JPEG 和 PNG 格式。對於 JPEG,它以百分比形式使用。級別 0 將產生一個非常小和低質量的文件,而 100 將產生高質量的文件。默認值為 75。對於 PNG,它設置為壓縮級別,0 表示文件小,100 表示文件大。
您可以使用clipRect, viewportSize, paperSize使用渲染方法以需要的格式渲染圖像緩衝區。
用法
其語法如下:
wpage.render(filename, {format:PDF|PNG|JPEG|BMP|PPM|GIF, quality:'100'});
示例:圖像
讓我們舉個例子來理解使用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://jquery.com/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 renderBase64()用法及代碼示例
- PhantomJS reload()用法及代碼示例
- PhantomJS onConsoleMessage()用法及代碼示例
- PhantomJS setContent()用法及代碼示例
- PhantomJS switchToFocusedFrame()用法及代碼示例
- PhantomJS onResourceRequested()用法及代碼示例
- PhantomJS onPageCreated()用法及代碼示例
- PhantomJS deleteCookie()用法及代碼示例
- PhantomJS onUrlChanged()用法及代碼示例
- PhantomJS onNavigationRequested()用法及代碼示例
- PhantomJS onAlert()用法及代碼示例
- PhantomJS onResourceError()用法及代碼示例
- PhantomJS evaluateJavascript()用法及代碼示例
注:本文由純淨天空篩選整理自 PhantomJS - render()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。