> For the complete documentation index, see [llms.txt](https://docs.digitalhumans.jp/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digitalhumans.jp/dev/miniprem/pdf-generator.md).

# PDF ドキュメント生成

{% hint style="info" %}
本ページの内容はデジタルヒューマン株式会社の正式サポート対象外です。参考情報としてご利用ください。
{% endhint %}

{% hint style="info" %}
**PDF ジェネレーター:** ミニプレム（MiniPrem）のドキュメントを、ブランディング・目次・カテゴリーフィルター付きのプロフェッショナルな PDF として出力します。プロジェクトルートから `./scripts/generate-docs-pdf.sh` を実行してください。
{% endhint %}

MiniPrem インストールから、ブランディング・目次・カテゴリーフィルターを備えたプロフェッショナルな PDF ドキュメントを生成します。

## 概要

PDF ジェネレータースクリプトは、MiniPrem の Markdown ドキュメントをプロフェッショナルにフォーマットされた PDF ドキュメントに変換します。主な機能は以下のとおりです。

* **カバーページ**: ロゴとドキュメントタイトル
* **目次**: クリック可能なページ参照
* **カテゴリーフィルター**: 特定のトピックのみを対象にドキュメントを生成
* **シンタックスハイライト**: コードブロックに対応
* **プロフェッショナルなスタイリング**: 印刷・共有に最適化

## クイックスタート

プロジェクトのルートディレクトリから、次のコマンドを実行してください。

```bash
./scripts/generate-docs-pdf.sh
```

これにより、次のパスに完全なドキュメント PDF が生成されます。

```
docs/MiniPrem-Documentation.pdf
```

## 使い方

```bash
./scripts/generate-docs-pdf.sh [OPTIONS]
```

### オプション

| オプション            | 説明                      |
| ---------------- | ----------------------- |
| `-c, --category` | カテゴリーでフィルター（デフォルト: all） |
| `-o, --output`   | 出力 PDF のファイルパス          |
| `-t, --title`    | カスタムドキュメントタイトル          |
| `--no-toc`       | 目次をスキップ                 |
| `--no-cover`     | カバーページをスキップ             |
| `--no-watermark` | ページの透かしをスキップ            |
| `-v, --verbose`  | 詳細出力を有効化                |
| `-h, --help`     | ヘルプメッセージを表示             |

### カテゴリー

特定のトピックに絞ってドキュメントを生成できます。

| カテゴリー        | 内容                                |
| ------------ | --------------------------------- |
| `docker`     | Docker デプロイガイドおよびローカルセットアップ       |
| `kubernetes` | Kubernetes / EKS / AKS の本番デプロイメント |
| `services`   | サービス設定（Flowise、vLLM、Renny など）     |
| `api`        | API リファレンスドキュメント                  |
| `advanced`   | 高度なトピック（テレメトリ、トラブルシューティング）        |
| `all`        | サイドバーの順序ですべてのドキュメント（デフォルト）        |

## 例

### ドキュメント全体を生成する

```bash
./scripts/generate-docs-pdf.sh
```

### Kubernetes ドキュメントのみを生成する

```bash
./scripts/generate-docs-pdf.sh --category kubernetes
```

### Docker と Kubernetes のドキュメントをまとめて生成する

```bash
./scripts/generate-docs-pdf.sh -c docker,kubernetes
```

### カスタム出力パスと詳細ログを指定する

```bash
./scripts/generate-docs-pdf.sh -o ~/Desktop/miniprem-docs.pdf -v
```

### カバーページと透かしなしで生成する

```bash
./scripts/generate-docs-pdf.sh --no-cover --no-watermark
```

## 出力

生成される PDF には以下が含まれます。

1. **カバーページ** - ロゴ、ドキュメントタイトル、生成日
2. **目次** - クリック可能なナビゲーションとページ番号
3. **ドキュメント本文** - シンタックスハイライト付きの選択されたすべてのドキュメント
4. **ページフッター** - 著作権表示とページ番号

### デフォルトの出力先

```
docs/MiniPrem-Documentation.pdf
```

## 要件

### Python

Python 3.8 以上が必要です。スクリプトは初回実行時に自動的に仮想環境を作成し、依存関係をインストールします。

### システムライブラリ

WeasyPrint は PDF レンダリングのためにシステムライブラリを必要とします。

**macOS:**

```bash
brew install pango cairo libffi gdk-pixbuf
```

**Ubuntu / Debian:**

```bash
apt-get install libcairo2 libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 libffi-dev
```

## トラブルシューティング

### WeasyPrint のインストールが失敗する

ライブラリが見つからないというエラーが表示される場合は、ご利用の OS 向けに上記のシステム依存関係をインストールしてください。

### PDF が生成されない

1. Python 3.8 以上がインストールされていることを確認します: `python3 --version`
2. 詳細を確認するため、verbose フラグ付きで実行します: `./scripts/generate-docs-pdf.sh -v`
3. docs ディレクトリが存在することを確認します: `ls docs/`

### フォントが欠落している

この PDF はシステムフォントを使用しています。テキストが正しく表示されない場合は、標準のシステムフォントがインストールされていることを確認してください。
