2017-01-31 18 views
0

Я пытаюсь добавить текст на скриншот. Таким образом мой код:Phantomjs Добавить текст

var system = require('system'); 
var args = system.args; 
var WebPage = require('webpage'); 

page = WebPage.create(); 
page.viewportSize = { width: 480, height: 800 }; 
page.clipRect = { top: 0, left: 0, width: 1024, height: 768 }; 
page.open(args[1].toString()); 
page.onLoadFinished = function() { 
page.render(args[1] + '.png'); 
phantom.exit(); 
} 

Я хочу знать, как я могу изменить содержимое html перед рендерингом, чтобы добавить текст? Я пытался использовать page.content, но безуспешно.

Спасибо.

ответ

1

Вы можете изменить содержимое html с помощью функции "page.evaluate". С помощью этой функции вы можете запустить javascript на странице. Некоторые простые примеры можно найти по адресу http://phantomjs.org/api/webpage/method/evaluate.html.

Попробуйте добавить что-то подобное заявление ниже, прежде чем вынести:

page.evaluate(function(str) { 
    document.querySelector('h2').textContent = str; 
}, 'title');