以下にPythonプログラム `add_notes_pptx_lib.py` の解析結果をMarkdown形式で記述します。

---

## `add_notes_pptx_lib.py` プログラム解析

### 1) プログラムの動作

このプログラムは、指定されたPowerPoint (.pptx) ファイルを開き、各スライドに付随するノートテキストを読み込みます。そして、そのノートテキストを各スライドの**下部**に、黒い背景に白い文字の字幕（キャプション）として追加し、新しいPowerPointファイルとして保存します。

具体的な処理の流れは以下の通りです。

1.  **コマンドライン引数の解析**:
    *   入力となるPowerPointファイル (`.pptx`) のパスを必須引数として受け取ります。
    *   出力ファイル名をオプションで指定できます。省略された場合は、入力ファイル名に `-note-added.pptx` を付加した名前が自動的に生成されます。
2.  **プレゼンテーションの読み込み**:
    *   指定された入力PowerPointファイルを `python-pptx` ライブラリを使って開きます。
3.  **スライドごとの処理**:
    *   プレゼンテーション内の各スライドに対してループ処理を行います。
    *   各スライドのノートスライドからテキストコンテンツを抽出します。
    *   ノートテキストが存在する場合のみ、以下の処理を行います。
        *   スライドの下部（スライドの高さから60ポイント上）に、スライド幅いっぱいで高さ60ポイントの新しいテキストボックスを追加します。
        *   テキストボックスの背景色を黒に設定します。
        *   抽出したノートテキストをこのテキストボックスに設定します。
        *   テキストは自動的に折り返され、左右に10ポイントの余白が設けられ、左寄せで表示されます。
        *   テキストのフォントは「メイリオ」、サイズは20ポイント、色は白に設定されます。
4.  **プレゼンテーションの保存**:
    *   全ての変更が加えられたプレゼンテーションを、指定された（または自動生成された）出力ファイル名で保存します。

### 2) 必要な非標準ライブラリとインストールコマンドとインストール方法

このプログラムは、PowerPointファイルを操作するために `python-pptx` ライブラリを使用しています。これはPythonの標準ライブラリではないため、別途インストールが必要です。

*   **ライブラリ名**: `python-pptx`
*   **インストールコマンド**:
    ```bash
    pip install python-pptx
    ```
*   **インストール方法**:
    コマンドプロンプト（Windows）またはターミナル（macOS/Linux）を開き、上記のコマンドを実行してください。インターネット接続が必要です。

### 3) 必要な入力ファイル

*   **ファイルの種類**: PowerPointプレゼンテーションファイル
*   **ファイル形式**: `.pptx` 形式
*   **内容**: スライドと、字幕としてスライドに追加したい内容が記述されたノート（発表者ノート）が含まれている必要があります。

### 4) 実行後に生成される出力ファイル

*   **ファイルの種類**: PowerPointプレゼンテーションファイル
*   **ファイル形式**: `.pptx` 形式
*   **内容**: 入力PowerPointファイルのスライドごとに、そのスライドのノートテキストがスライドの下部に黒い背景に白い文字の字幕として追加された新しいプレゼンテーションファイルです。

### 5) コマンドラインでの使用例 (Usage)

このプログラムはコマンドラインから実行されます。

```bash
python add_notes_pptx_lib.py <infile> [-o <outfile>]
```

*   `<infile>`: 入力するPowerPointファイルへのパス（必須）。
*   `-o <outfile>`, `--outfile <outfile>`: 出力するPowerPointファイルの名前（オプション）。

#### 例1: 出力ファイル名を自動生成する場合

入力ファイル `presentation.pptx` のノートを字幕として追加し、`presentation-note-added.pptx` という名前で保存します。

```bash
python add_notes_pptx_lib.py presentation.pptx
```

#### 例2: 出力ファイル名を指定する場合

入力ファイル `my_report.pptx` のノートを字幕として追加し、`my_report_with_subs.pptx` という名前で保存します。

```bash
python add_notes_pptx_lib.py my_report.pptx -o my_report_with_subs.pptx
```

#### 例3: ヘルプメッセージを表示する場合

```bash
python add_notes_pptx_lib.py --help
```