66 lines
1.6 KiB
Markdown
Executable File
66 lines
1.6 KiB
Markdown
Executable File
# Ghostscript PHP driver
|
|
|
|
[![Build Status](https://secure.travis-ci.org/alchemy-fr/Ghostscript-PHP.png)](http://travis-ci.org/alchemy-fr/Ghostscript-PHP)
|
|
|
|
# API usage
|
|
|
|
To instantiate Ghostscript driver, the easiest way is :
|
|
|
|
```php
|
|
$transcoder = Ghostscript\Transcoder::create();
|
|
```
|
|
|
|
You can customize your driver by passing a `Psr\Log\LoggerInterface` or
|
|
configuration options.
|
|
|
|
Available options are :
|
|
|
|
- `gs.binaries` : the path (or an array of potential paths) to the ghostscript binary.
|
|
- `timeout` : the timeout for the underlying process.
|
|
|
|
```php
|
|
$transcoder = Ghostscript\Transcoder::create(array(
|
|
'timeout' => 42,
|
|
'gs.binaries' => '/opt/local/gs/bin/gs',
|
|
), $logger);
|
|
```
|
|
|
|
To process a file to PDF format, use the `toPDF` method :
|
|
|
|
Third and fourth arguments are respectively the first page and the number of
|
|
page to transcode.
|
|
|
|
```php
|
|
$transcoder->toPDF('document.pdf', 'first-page.pdf', 1, 1);
|
|
```
|
|
|
|
To render a file to Image, use the `toImage` method :
|
|
|
|
```php
|
|
$transcoder->toImage('document.pdf', 'output.jpg');
|
|
```
|
|
|
|
## Silex service provider :
|
|
|
|
A [Silex](silex.sensiolabs.org) Service Provider is available, all parameters
|
|
are optionals :
|
|
|
|
```php
|
|
$app = new Silex\Application();
|
|
$app->register(new Ghostscript\GhostscriptServiceProvider(), array(
|
|
'ghostscript.configuration' => array(
|
|
'gs.binaries' => '/usr/bin/gs',
|
|
'timeout' => 42,
|
|
)
|
|
'ghostscript.logger' => $app->share(function () {
|
|
return $app['monolog']; // use Monolog service provider
|
|
}),
|
|
));
|
|
|
|
$app['ghostscript.pdf-transcoder']->toImage('document.pdf', 'image.jpg');
|
|
```
|
|
|
|
# License
|
|
|
|
Released under the MIT License
|