convertor/docs/功能說明/OCR.md
Your Name a06df23b1d feat: 新增 OCRmyPDF 轉換引擎 (v0.1.14)
## 新功能
- OCRmyPDF 轉換引擎:將掃描版 PDF 轉換為可搜尋 PDF
  - 支援 7 種語言:en, zh-TW, zh, ja, ko, de, fr
  - 與 PDFMathTranslate 風格一致的 UI 格式 (pdf-<lang>)
  - 自動偵測頁面方向並旋轉
  - 自動校正傾斜
  - 跳過已有文字層的頁面
  - 詳細的 5 階段處理進度輸出

## 建置
- Dockerfile:安裝 ocrmypdf 與 Tesseract OCR 語言包

## 文件
- 更新 OCR 功能文件
- 文件目錄結構改為中文名稱

## 測試
- 修復 BabelDOC 和 PDFMathTranslate 測試的 OCR mock
- 所有 345 個測試通過
2026-01-23 16:28:33 +08:00

152 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# OCR 功能
ConvertX-CN 內建 Tesseract OCR 與 ocrmypdf提供完整的 OCR 功能:
- **圖片 OCR**:將圖片中的文字轉換為可編輯文字
- **PDF OCR**:將掃描版 PDF 轉換為可搜尋 PDF加入文字層
- **PDF 自動偵測**:翻譯引擎會自動偵測掃描版 PDF 並進行 OCR 處理
---
## 內建語言
ConvertX-CN 完整版內建以下 OCR 語言:
| 語言 | 代碼 |
| -------- | --------- |
| 繁體中文 | `chi_tra` |
| 簡體中文 | `chi_sim` |
| 英文 | `eng` |
| 日文 | `jpn` |
| 韓文 | `kor` |
| 德文 | `deu` |
| 法文 | `fra` |
---
## 使用方式
### PDF → 可搜尋 PDFOCR
將掃描版 PDF 轉換為可搜尋 PDF
1. 上傳 PDF 檔案
2. 選擇 Converter: `OCRmyPDF`
3. 選擇目標語言:
| 格式 | 說明 |
| ---- | ---- |
| `pdf-en` | English |
| `pdf-zh-TW` | 繁體中文 |
| `pdf-zh` | 簡體中文 |
| `pdf-ja` | 日本語 |
| `pdf-ko` | 한국어 |
| `pdf-de` | Deutsch |
| `pdf-fr` | Français |
4. 進行轉換
> 💡 **功能特點**
>
> - 自動偵測頁面方向並旋轉
> - 自動校正傾斜
> - 跳過已有文字層的頁面
> - 詳細的處理進度輸出
### 圖片 → 文字
1. 上傳圖片PNG, JPG, TIFF 等)
2. 選擇目標格式 `txt``pdf`(可搜尋)
3. 進行轉換
### 掃描版 PDF 翻譯(自動處理)
當使用 PDFMathTranslate 或 BabelDOC 翻譯 PDF 時:
1. 系統會**自動偵測**是否為掃描版 PDF無文字層
2. 若為掃描版,系統會**自動執行 OCR** 加入文字層
3. 翻譯引擎使用 OCR 處理後的 PDF 進行翻譯
4. 使用者無需手動操作,全程自動完成
---
## 支援的輸入格式
- **點陣圖**PNG, JPG, JPEG, TIFF, BMP, GIF
- **其他**WebP, PNM, PBM
---
## 輸出格式
| 格式 | 說明 |
| ---- | --------------- |
| TXT | 純文字 |
| PDF | 可搜尋 PDF |
| HOCR | HTML + 座標資訊 |
---
## 最佳實踐
### 提高辨識準確度
1. **解析度**:至少 300 DPI
2. **對比度**:文字與背景對比清晰
3. **傾斜校正**:確保文字水平
4. **雜訊去除**:去除背景雜訊
### 處理多語言文件
Tesseract 可同時辨識多種語言,但準確度可能下降。
建議:
- 單一語言文件使用單一語言包
- 中英混合使用 `chi_tra+eng`
---
## 新增語言
### 方法一:自訂 Dockerfile
> 💡 在 `Dockerfile.full` 中取消註解以下內容
```dockerfile
RUN apt-get update && apt-get install -y --no-install-recommends \
tesseract-ocr-spa \
tesseract-ocr-ita \
&& rm -rf /var/lib/apt/lists/*
```
- `tesseract-ocr-spa` — 西班牙文
- `tesseract-ocr-ita` — 義大利文
### 方法二:掛載語言包
```yaml
volumes:
- ./tessdata:/usr/share/tesseract-ocr/5/tessdata
```
下載語言包https://github.com/tesseract-ocr/tessdata_best
---
## 可選語言包
| 區域 | 語言 |
| ------ | ------------------------------ |
| 西歐 | 西班牙文、義大利文、葡萄牙文 |
| 北歐 | 瑞典文、丹麥文、挪威文、芬蘭文 |
| 東歐 | 俄文、波蘭文、捷克文、匈牙利文 |
| 中東 | 阿拉伯文、希伯來文、土耳其文 |
| 南亞 | 印地文、孟加拉文、泰米爾文 |
| 東南亞 | 泰文、越南文、印尼文 |
---
## 相關文件
- [支援的轉換器](轉換器.md)
- [翻譯功能](翻譯.md)
- [Docker 部署](../部署指南/Docker.md)