tikiwiki / php-unoconv
Unoconv PHP, an Object Oriented library for easy file conversion with LibreOffice's unoconv
Installs: 38
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Forks: 1
pkg:composer/tikiwiki/php-unoconv
Requires
- php: ^8.1
- tikiwiki/binary-driver: ^6.0
Requires (Dev)
- phpunit/phpunit: ^10.0 || ^11.0
- pimple/pimple: ^3.5
This package is auto-updated.
Last update: 2025-10-30 10:52:12 UTC
README
This project is a fork of php-unoconv/php-unoconv.
An Object Oriented library which allow easy to use file conversion with Unoconv.
Install
The recommended way to install PHP-Unoconv is through composer.
{
    "require": {
        "php-unoconv/php-unoconv": "~0.2"
    }
}
Documentation
Documentation available at http://php-unoconv.readthedocs.org/
API Usage
To instantiate Unoconv driver, the easiest way is :
$unoconv = Unoconv\Unoconv::create();
You can customize your driver by passing a Psr\Log\LoggerInterface or
configuration options.
Available options are :
- timeout: the timeout for the underlying process.
- unoconv.binaries: the path (or an array of paths) for a custom binary.
$unoconv = Unoconv\Unoconv::create(array(
    'timeout'          => 42,
    'unoconv.binaries' => '/opt/local/unoconv/bin/unoconv',
), $logger);
To transcode a file, use the transcode method. For the complete format list
supported by unoconv, refer to the unoconv CLI.
$unoconv->transcode('document.docx', 'pdf', 'document.pdf');
You can optionaly transcode a given page range using the fourth argument :
// pages 1 to 14
$unoconv->transcode('document.docx', 'pdf', 'document.pdf', '1-14');
Silex Service Provider
A Silex Service Provider is available, all parameters are optionals :
$app = new Silex\Application();
$app->register(new Unoconv\UnoconvServiceProvider(), array(
    'unoconv.configuration' => array(
        'unoconv.binaries' => '/opt/local/unoconv/bin/unoconv',
        'timeout'          => 42,
    ),
    'unoconv.logger'  => $app->share(function () {
        return $app['monolog']; // use Monolog service provider
    }),
));
License
Released under the MIT license

