Pārlūkot izejas kodu

打包后别的计算机可以独立运行,不过可能要额外下载字体

mrh 9 mēneši atpakaļ
vecāks
revīzija
1a72f138f2
8 mainītis faili ar 183 papildinājumiem un 116 dzēšanām
  1. 4 0
      .gitignore
  2. 16 6
      README.md
  3. 1 1
      config.json
  4. 2 1
      pdf2zh/pdf2zh.py
  5. 150 108
      poetry.lock
  6. 4 0
      pyproject.toml
  7. 1 0
      run_gui.bat
  8. 5 0
      run_gui.py

+ 4 - 0
.gitignore

@@ -173,3 +173,7 @@ uv.lock
 *.pdf
 *.docx
 .aider*
+*.exe
+pdf_env
+*.zip
+onnx

+ 16 - 6
README.md

@@ -191,13 +191,23 @@ See [Zotero PDF2zh](https://github.com/guaguastandup/zotero-pdf2zh) for more det
   <summary>6. conda package</summary>
 
 ```shell
-conda create -n pdf python==3.12 -y
-conda activate pdf
-pip install pdf2zh
-conda pack -n pdf -o pdf.tar.gz
-tar -xzf pdf.tar.gz -C pdf2zh_env
-.\pdf2zh_env\Scripts\activate.bat
+conda create -n pdf_env python==3.12 -y
+conda activate pdf_env
+uv pip install .
+python -m pdf2zh.pdf2zh -i --config config.json --onnx .\onnx\doclayout_yolo_docstructbench_imgsz1024.onnx
+conda activate base
+conda install -c conda-forge conda-pack -y
+conda pack -n pdf_env -o pdf_env.tar.gz
+mkdir -p pdf_env
+tar -xzf pdf_env.tar.gz -C pdf_env
+.\pdf_env\Scripts\activate.bat
 pdf2zh exzample.pdf
+
+Remove-Item -Path pdf_env.tar.gz
+# Compress-Archive -Path run_gui.bat, pdf2zh, pdf_env, onnx, config.json -DestinationPath pdf_translator.zip
+7z a -tzip pdf_translator.zip run_gui.bat pdf2zh pdf_env onnx config.json
+
+conda env remove --name pdf_env -y
 ```
 
 </details>

+ 1 - 1
config.json

@@ -1,5 +1,5 @@
 {
-    "USE_MODELSCOPE": "0",
+    "USE_MODELSCOPE": "1",
     "PDF2ZH_LANG_FROM": "English",
     "PDF2ZH_LANG_TO": "Simplified Chinese",
     "NOTO_FONT_PATH": "/app/SourceHanSerifCN-Regular.ttf",

+ 2 - 1
pdf2zh/pdf2zh.py

@@ -14,6 +14,8 @@ from typing import List, Optional
 from pdf2zh import __version__, log
 from pdf2zh.high_level import translate, download_remote_fonts
 from pdf2zh.doclayout import OnnxModel, ModelInstance
+from pdf2zh.gui import setup_gui
+
 import os
 
 from pdf2zh.config import ConfigManager
@@ -234,7 +236,6 @@ def main(args: Optional[List[str]] = None) -> int:
         ModelInstance.value = OnnxModel.load_available()
 
     if parsed_args.interactive:
-        from pdf2zh.gui import setup_gui
 
         if parsed_args.serverport:
             setup_gui(

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 150 - 108
poetry.lock


+ 4 - 0
pyproject.toml

@@ -63,3 +63,7 @@ pdf2zh = "pdf2zh.pdf2zh:main"
 [tool.flake8]
 ignore = ["E203", "E261", "E501", "W503", "E741"]
 max-line-length = 88
+
+[tool.poetry.group.dev.dependencies]
+pyinstaller = "^6.11.1"
+

+ 1 - 0
run_gui.bat

@@ -0,0 +1 @@
+.\pdf_env\python.exe -m pdf2zh.pdf2zh -i --config config.json --onnx .\onnx\doclayout_yolo_docstructbench_imgsz1024.onnx

+ 5 - 0
run_gui.py

@@ -0,0 +1,5 @@
+import sys
+from pdf2zh.pdf2zh import main
+
+if __name__ == "__main__":
+    sys.exit(main(["--interactive", '--config', 'config.json']))

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels