サーバーサイドはコマンド実行できれば何の言語でも問題ないです。
たとえばPHPで
php
<?php $imageName = exec("/usr/local/bin/phantomjs ./js/capture.js $target $filename $browser_width $browser_height $offset_x $offset_y $rectangle_x $rectangle_y $zoom $is_all"); echo "<img src='{$imageName}' />"; |
capture.js
var system = require('system'); var page = require('webpage').create(); var filename = 'output/' + system.args[2]; page.viewportSize = { width: system.args[3], height: system.args[4] }; if (system.args[10] != 'true') { // setting : capture offset, rectangle size page.clipRect = { top: system.args[6], left: system.args[5], width: system.args[7], height: system.args[8] }; } // setting zoom page.zoomFactor = (system.args[9] / 100); page.open(system.args[1], function() { page.render(filename); console.log(filename); phantom.exit(); }); |
パラメーターは想像してください。