Ghostscript
Ghostscript is an object oriented Ghostscript binary wrapper for PHP.
Requirements
This library has the following requirements:
- PHP 8.0+
- Ghostscript 9.00+
Installation
Install Composer in your project:
$ curl -s https://getcomposer.org/installer | phpRequire the package via Composer:
$ php composer.phar require gravitymedia/ghostscript:v2.0Usage
This is a simple usage example how to convert an input PDF to an output PDF.
// Initialize autoloader
require_once __DIR__ . '/vendor/autoload.php';
// Import classes
use GravityMedia\Ghostscript\Ghostscript;
use Symfony\Component\Process\Process;
// Define input and output files
$inputFile = '/path/to/input/file.pdf';
$outputFile = '/path/to/output/file.pdf';
// Create Ghostscript object
$ghostscript = new Ghostscript([
'quiet' => false
]);
// Create and configure the device
$device = $ghostscript->createPdfDevice($outputFile);
$device->setCompatibilityLevel(1.4);
// Create process
$process = $device->createProcess($inputFile);
// Print the command line
print '$ ' . $process->getCommandLine() . PHP_EOL;
// Run process
$process->run(function ($type, $buffer) {
if ($type === Process::ERR) {
throw new \RuntimeException($buffer);
}
print $buffer;
});Testing
Clone this repository, install Composer and all dependencies:
$ php composer.phar installRun the test suite:
$ php composer.phar testGenerating documentation
Clone this repository, install Composer and all dependencies:
$ php composer.phar installGenerate the documentation to the build/docs directory:
$ php composer.phar docContributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.