Download the PHP package nowo-tech/word-to-pdf-bundle without Composer
On this page you can find all versions of the php package nowo-tech/word-to-pdf-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download nowo-tech/word-to-pdf-bundle
More information about nowo-tech/word-to-pdf-bundle
Files in nowo-tech/word-to-pdf-bundle
Package word-to-pdf-bundle
Short Description Symfony bundle: convert Microsoft Word (.docx/.doc) to PDF via LibreOffice Writer (soffice) with named profiles and runtime dependency checks.
License MIT
Homepage https://github.com/nowo-tech/WordToPdfBundle
Informations about the package word-to-pdf-bundle
WordToPdfBundle
Found this useful? Install from Packagist (
composer require nowo-tech/word-to-pdf-bundle) and consider starring WordToPdfBundle on GitHub.
Symfony bundle that converts Microsoft Word (.docx / .doc) to PDF using LibreOffice Writer (soffice headless) for print-quality layout fidelity:
- named YAML profiles + default profile + deep merge with per-call options, or
convertWithInlineProfile(); - batch conversion via
convertMany()withPdfNaming(keep / prefix / suffix / surround / fixed / callback, or path ⇒ filename map); - runtime check that LibreOffice Writer is installed (
nowo:word-to-pdf:check); fails with install hints if missing; - works under PHP-FPM and FrankenPHP (Symfony Process /
proc_open); - Symfony-friendly export: streamed/binary responses, local path, optional Flysystem.
This bundle does not fill Word templates (see WordTemplateBundle), convert HTML to Word (see HtmlToWordBundle), or use DomPDF (DomPDF cannot preserve Word styles).
Documentation
- Installation
- Configuration
- Usage
- Contributing
- Code of Conduct
- Changelog
- Upgrading
- Release
- Security
- Engram
- Spec-driven development
- GitHub Spec Kit
Additional documentation
- GitHub Actions CI requirements
demo/README.md)
System requirement
LibreOffice Writer must be installed on the host / container (Composer cannot install it):
Verify:
Quick start
Prefer the shared Nowo env (demos and multi-bundle apps):
See docs/DEMO-FRANKENPHP.md.
FrankenPHP worker mode
FrankenPHP worker mode: Supported (tested with LibreOffice conversion under FrankenPHP).
The demo runs under FrankenPHP. Conversion uses Symfony Process with a hard timeout (and idle timeout); on expiry the runner stops the process tree so workers are not left with orphaned LibreOffice children (REQ-RUNTIME-001). Align PHP / Caddy deadlines above the profile timeout.
Demos use FRANKENPHP_MODE (worker by default, or classic) on PHP 8.5 — see docs/DEMO-FRANKENPHP.md. Change mode in .env and recreate containers (docker compose up -d); no image rebuild.
Tests and coverage
| Scope | Detail |
|---|---|
| PHPUnit | composer test — unit + integration (@group libreoffice skipped when soffice is absent). |
| PHP lines | composer coverage-check enforces 100% (PCOV). Latest measurement: PHP: 100%. |
| TS/JS | N/A (no frontend assets in this bundle). |
Development
All versions of word-to-pdf-bundle with dependencies
ext-fileinfo Version *
league/flysystem Version ^3.16
symfony/config Version ^7.0 || ^8.0
symfony/console Version ^7.0 || ^8.0
symfony/dependency-injection Version ^7.0 || ^8.0
symfony/http-foundation Version ^7.0 || ^8.0
symfony/http-kernel Version ^7.0 || ^8.0
symfony/process Version ^7.0 || ^8.0