r"""
#pip install pdf2image pytesseract pillow
#Tesseract OCR をインストールします。
#macOS: brew install tesseract-lang（日本語含む）
#Ubuntu: sudo apt install tesseract-ocr tesseract-ocr-jpn
#Windows: 公式インストーラ（日本語パックを追加）
#https://gammasoft.jp/blog/tesseract-ocr-install-on-windows/
#C:\Program Files\Tesseract-OCR
#
#① Poppler をダウンロード
以下のページから Windows 用 Poppler を取得
https://github.com/oschwartz10612/poppler-windows/releases/

poppler-xx.x.x-Release.zip をダウンロード
任意の場所に解凍（例：C:\poppler）
② PATH を通す
C:\poppler\Library\bin を探す
Windows の「環境変数」→「Path」に追加
"""


import sys
from pdf2image import convert_from_path
import pytesseract
import os

# --- 設定 ---
PDF_PATH = "input.pdf"
OUTPUT_TEXT = "output.txt"
LANG = "jpn"  # 日本語OCR
#LANG = "jpn+eng"  # 日本語英語混在OCR

POPPLER_PATH = r"D:\App\App.tools\poppler\Library\bin"  # 解凍した場所に合わせて変更
PYTESSERACT_PATH = r"C:\Program Files\Tesseract-OCR\tesseract.exe"

argv = sys.argv
nargs = len(argv)
if nargs > 1: PDF_PATH = argv[1]
if nargs > 2: OUTPUT_TEXT = argv[2]
if nargs > 3: LANG = argv[3]


pytesseract.pytesseract.tesseract_cmd = os.path.join(PYTESSERACT_PATH, "tesseract.exe")
os.environ["TESSDATA_PREFIX"] = PYTESSERACT_PATH

# --- PDF → 画像変換 ---
pages = convert_from_path(PDF_PATH, dpi=300, poppler_path=POPPLER_PATH)

# --- OCR実行 ---
all_text = []

for i, page in enumerate(pages):
    text = pytesseract.image_to_string(page, lang=LANG)
    all_text.append(text)
    print(f"Page {i+1} done")

# --- テキスト保存 ---
with open(OUTPUT_TEXT, "w", encoding="utf-8") as f:
    f.write("\n\n".join(all_text))

print("OCR完了:", OUTPUT_TEXT)
