jakercz/pdf-version-converter

PHP library for converting the version of PDF files (for compatibility purposes).

dev-master / 1.0.x-dev 2023-04-13 09:16 UTC

This package is not auto-updated.

Last update: 2024-11-22 15:04:52 UTC


README

PHP library for converting the version of PDF files (for compatibility purposes).

Build Status SensioLabsInsight Codacy Badge

Requirements

  • PHP 5.3+
  • Ghostscript (gs command on Linux)

Installation

Run php composer.phar require xthiago/pdf-version-converter dev-master or add the follow lines to composer and run composer install:

{
    "require": {
        "xthiago/pdf-version-converter": "dev-master"
    }
}

Usage

Guessing a version of PDF File:

<?php

// import the composer autoloader
require_once __DIR__.'/vendor/autoload.php'; 

// import the namespaces
use Xthiago\PDFVersionConverter\Guesser\RegexGuesser;
// [..]

$guesser = new RegexGuesser();
echo $guesser->guess('/path/to/my/file.pdf'); // will print something like '1.4'

Converting file to a new PDF version:

<?php

// import the composer autoloader
require_once __DIR__.'/vendor/autoload.php'; 

// import the namespaces
use Symfony\Component\Filesystem\Filesystem,
    Xthiago\PDFVersionConverter\Converter\GhostscriptConverterCommand,
    Xthiago\PDFVersionConverter\Converter\GhostscriptConverter;

// [..]

$command = new GhostscriptConverterCommand();
$filesystem = new Filesystem();

$converter = new GhostscriptConverter($command, $filesystem);
$converter->convert('/path/to/my/file.pdf', '1.4');

Contributing

Is really simple add new implementation of guesser or converter, just implement GuessInterface or ConverterInterface.

Running unit tests

Run phpunit -c tests.