Metadata-Version: 2.4
Name: minipdf
Version: 0.1.0
Summary: Pure Python Office-to-PDF conversion engine
Author: MiniPdf contributors
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/mini-software/MiniPdf
Project-URL: Repository, https://github.com/mini-software/MiniPdf
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: mypy>=1.11; extra == "dev"
Requires-Dist: pypdf>=5; extra == "dev"
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: ruff>=0.9; extra == "dev"
Requires-Dist: twine>=6; extra == "dev"
Dynamic: license-file

# MiniPdf for Python

Experimental pure Python implementation of MiniPdf. The initial release
converts basic DOCX paragraphs to PDF 1.4 without requiring Microsoft Office,
LibreOffice, .NET, or Rust at runtime.

The package requires Python 3.10 or later. XLSX support is planned; PPTX is not
currently supported.

## Install

```bash
pip install minipdf
```

## Python API

```python
import minipdf

minipdf.convert_to_pdf("report.docx", "report.pdf")
pdf_bytes = minipdf.convert_to_pdf_bytes("report.docx")
```

## Command Line

```bash
minipdf report.docx
minipdf convert report.docx -o report.pdf
minipdf report.docx --paper-size a4
minipdf report.docx --page-width 400 --page-height 500
```

## Initial Scope

Version 0.1 supports document page geometry, margins, paragraphs, explicit page
breaks, and basic bold, italic, and font-size run formatting. Text currently
uses PDF built-in Latin fonts. Tables, images, embedded fonts, CJK/RTL shaping,
headers, footers, lists, XLSX, and PPTX are not yet supported.
