dotzero/yii-phantomjs-screenshot

This package is abandoned and no longer maintained. No replacement package was suggested.

The Yii PhantomjsWebpageScreenshot extension that allows to generate screenshots of web pages on the fly

v1.0.0 2016-04-30 08:23 UTC

This package is auto-updated.

Last update: 2022-06-04 08:34:21 UTC


README

Latest Stable Version License

The Yii PhantomjsWebpageScreenshot extension that allows to generate screenshots of web pages on the fly. It uses the headless webkit PhantomJS as a capture-engine.

PhantomJS is a headless WebKit with JavaScript API. It has fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG.

Requirements:

Install

Via composer:

$ composer require dotzero/yii-phantomjs-screenshot

Add vendor path to your configuration file, attach component and set properties.

'aliases' => array(
    ...
    'vendor' => realpath(__DIR__ . '/../../vendor'),
),
'components' => array(
    ...
    'screenshot' => array(
        'class' => 'vendor.dotzero.yii-phantomjs-screenshot.EWebpageScreenshot',
        //'phantomjs' => '/bin/phantomjs',
        //'width' => 640,
        //'height' => 480,
    ),
),

Usage:

$screenshot = Yii::app()->screenshot;
$screenshot->width = 640;
$screenshot->height = 480;

$url = 'http://www.google.com';
$outfile = Yii::getPathOfAlias('application.runtime') . '/' . uniqid() . '.png';

$screenshot->capture($url, $outfile);

License

Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php