jrmc / php-unoconv

Unoconv PHP,一个面向对象的库,可以轻松使用LibreOffice的unoconv进行文件转换

v4.3.0 2022-03-20 13:58 UTC

This package is auto-updated.

Last update: 2024-09-20 19:24:59 UTC


README

Build Status

一个面向对象的库,允许轻松使用Unoconv进行文件转换。

安装

安装PHP-Unoconv推荐的方式是通过composer

{
    "require": {
        "php-unoconv/php-unoconv": "~0.2"
    }
}

文档

文档可在http://php-unoconv.readthedocs.org/找到

API使用

实例化Unoconv驱动程序的最简单方法是

$unoconv = Unoconv\Unoconv::create();

您可以通过传递Psr\Log\LoggerInterface或配置选项来自定义您的驱动程序。

可用选项包括

  • timeout:底层进程的超时时间。
  • unoconv.binaries:自定义二进制文件的路径(或路径数组)。
$unoconv = Unoconv\Unoconv::create(array(
    'timeout'          => 42,
    'unoconv.binaries' => '/opt/local/unoconv/bin/unoconv',
), $logger);

要转码文件,请使用transcode方法。有关unoconv支持的完整格式列表,请参阅unoconv CLI。

$unoconv->transcode('document.docx', 'pdf', 'document.pdf');

您可以使用第四个参数可选地转码指定的页码范围

// pages 1 to 14
$unoconv->transcode('document.docx', 'pdf', 'document.pdf', '1-14');

Silex服务提供者

一个Silex服务提供者可用,所有参数都是可选的

$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
    }),
));

许可证

在MIT许可证下发布

Bitdeli Badge