darkdarin / lowrapper
PHP wrapper over LibreOffice converter
v2.0.0
2024-05-01 13:04 UTC
Requires
- php: 8.2.*|8.3.*
- psr/log: ^1|^2|^3
- symfony/process: ^6.0|^7.0
Requires (Dev)
- laravel/pint: ^1.10
- phpunit/phpunit: ^10.0
- vimeo/psalm: ^5.23
This package is auto-updated.
Last update: 2024-12-01 00:15:55 UTC
README
PHP wrapper over LibreOffice converter
Simple way for documents conversion into various formats.
For example: html -> docx, html -> pdf, docx -> html and many more.
Usage
use DarkDarin\Lowrapper\Converter; use DarkDarin\Lowrapper\LowrapperParameters; use DarkDarin\Lowrapper\Format\TextFormatEnum; // Create converter $converter = new Converter(); // Describe parameters for converter $parameters = (new LowrapperParameters(TextFormatEnum::DOCX)) // HTML document ->setInputFile('test.html') // Result file name ->setOutputFile('path-to-result-docx.docx'); // Run converter $converter->convert($parameters);
More examples
Requirements
- PHP 5.5+
- libreoffice-core
Installation
sudo add-apt-repository ppa:libreoffice/ppa sudo apt-get update sudo apt-get install default-jdk -y sudo apt-get install python-software-properties -y sudo apt-get install software-properties-common -y sudo apt-get install libreoffice-core --no-install-recommends sudo apt-get install libreoffice-writer composer require mnvx/lowrapper
Example of installation libreoffice into docker container:
FROM php:7.2-fpm WORKDIR /var/www/html # Install libreoffice headless RUN apt update -y \ && mkdir -p /usr/share/man/man1 \ && apt -y install default-jdk-headless libreoffice-core libreoffice-writer libreoffice-calc RUN mkdir -p /var/www/.cache/dconf \ && mkdir -p /var/www/.config/libreoffice \ && chmod -R ugo+rwx /var/www/.cache \ && chmod -R ugo+rwx /var/www/.config
Run tests
./vendor/bin/phpunit
License
Released under the MIT license