Metadata-Version: 2.4
Name: yakultpdf
Version: 0.7.18
Summary: Markdown to PDF converter using Pandoc and Typst
Author: mark2pdf contributors
License-Expression: MIT
License-File: LICENSE
Keywords: converter,markdown,pandoc,pdf,typst
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.11
Requires-Dist: click>=8.0.0
Requires-Dist: markdown-it-py
Requires-Dist: mdit-py-plugins
Requires-Dist: opencc
Requires-Dist: pillow
Requires-Dist: pymupdf
Requires-Dist: pyyaml
Provides-Extra: web
Requires-Dist: fastapi>=0.128.0; extra == 'web'
Requires-Dist: uvicorn[standard]>=0.40.0; extra == 'web'
Description-Content-Type: text/markdown

# yakultpdf

**Markdown to PDF Converter based on Pandoc and Typst**

Convert Markdown files into beautiful PDFs. Supports Frontmatter configuration, automated TOC management, and Python API usage.

## Installation

```bash
pip install yakultpdf
```

> **Note**: Ensure [Pandoc](https://pandoc.org/) and [Typst](https://typst.app/) are installed before use.

## CLI Usage

**1. Initialization & Configuration**
```bash
# Initialize workspace (create configuration and directory structure)
yakultpdf init

# Install common Chinese fonts (e.g., lxgw-wenkai)
yakultpdf fonts install lxgw-wenkai
```

**2. Convert Documents**
```bash
# Convert single file (default output to out/ directory)
yakultpdf convert document.md

# Convert single file with specified output filename
yakultpdf convert document.md --output my-report

# Convert entire directory (automatically merge all md files in directory)
yakultpdf convert --dir docs/
```

**3. More Features**
```bash
# Copy built-in templates to local template/ directory
yakultpdf template
```

## Python API Usage

Note: use `mark2pdf` for importing:

```python
from mark2pdf import convert_file, convert_directory

# 1. Convert single file
# Convert input.md to output.pdf with default configuration
convert_file("input.md", output_file="output.pdf")

# 2. Convert directory
# Merge all Markdown files in docs directory and convert to merged_report.pdf
convert_directory("docs", output_file="merged_report.pdf")
```
