feat: 添加轻量打包和OCR自动安装功能

- 添加Windows打包脚本 build.bat
- 更新打包文档 BUILD.md(轻量版方案)
- OCR模块:添加首次运行时自动安装PaddleOCR的功能
- 主窗口:添加OCR安装检测和提示逻辑
- 创建应用入口 src/main.py

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
congsh
2026-02-12 10:14:10 +08:00
parent c4a77f8aa4
commit 154d53dbfd
8 changed files with 301 additions and 5 deletions

View File

@@ -27,7 +27,31 @@ try:
from paddleocr import PaddleOCR
except ImportError:
PaddleOCR = None
logging.warning("PaddleOCR 未安装,本地 OCR 功能不可用")
logging.warning("PaddleOCR 未安装,本地 OCR 功能不可用。首次运行时将自动安装。")
def ensure_paddleocr():
"""
确保 PaddleOCR 已安装,如果没有则安装
首次运行时自动下载安装 OCR 库
"""
global PaddleOCR
if PaddleOCR is None:
import subprocess
import sys
logging.info("正在安装 PaddleOCR...")
try:
subprocess.check_call([
sys.executable, "-m", "pip", "install",
"--break-system-packages",
"paddleocr"
])
# 重新导入
from paddleocr import PaddleOCR
globals()["PaddleOCR"] = PaddleOCR
logging.info("PaddleOCR 安装成功!")
except subprocess.CalledProcessError as e:
logging.error(f"PaddleOCR 安装失败: {e}")
raise
# 配置日志