Metadata-Version: 2.4
Name: yakultpdf
Version: 0.7.5
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: 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

# mark2pdf

**基于 Pandoc 和 Typst 的 Markdown 转 PDF 工具**

将 Markdown 文件转换为精美的 PDF。支持 Frontmatter 配置、自动化目录管理以及通过 Python 代码调用。

## 安装

```bash
pip install mark2pdf
```

> **注意**：使用前请确保已安装 [Pandoc](https://pandoc.org/) 和 [Typst](https://typst.app/)。

## CLI 使用

**1. 初始化与配置**
```bash
# 初始化工作区（创建配置和目录结构）
mark2pdf init

# 安装常用中文字体（如 lxgw-wenkai）
mark2pdf fonts install lxgw-wenkai
```

**2. 转换文档**
```bash
# 转换单个文件 (默认输出到 out/ 目录)
mark2pdf convert document.md

# 转换单个文件并指定输出文件名
mark2pdf convert document.md --output my-report

# 转换整个目录（自动合并目录内所有 md 文件）
mark2pdf convert --dir docs/
```

**3. 更多功能**
```bash
# 复制内置模板到本地 template/ 目录
mark2pdf template

# 查看帮助
mark2pdf --help
mark2pdf convert --help
```

## Python API 使用

```python
from mark2pdf import convert_file, convert_directory

# 1. 转换单个文件
# 将 input.md 转换为 output.pdf，使用默认配置
convert_file("input.md", output_file="output.pdf")

# 2. 转换目录
# 将 docs 目录下的所有 Markdown 合并转换为 merged_report.pdf
convert_directory("docs", output_file="merged_report.pdf")
```

## 开发与全局安装

如果你是开发者或希望从源码进行全系统安装，推荐使用 `uv tool`：

```bash
# 在项目根目录下运行
uv tool install . --force
```

这会将 `mark2pdf` 安装到隔离环境中并添加到系统 PATH，使你可以在任何目录下直接运行 `mark2pdf` 命令。
