BabelDOC 0.3.28__tar.gz → 0.3.29__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/ISSUE_TEMPLATE/bug_report.yaml +4 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/PULL_REQUEST_TEMPLATE/pr_form.yml +1 -1
- {babeldoc-0.3.28 → babeldoc-0.3.29}/PKG-INFO +5 -1
- {babeldoc-0.3.28 → babeldoc-0.3.29}/README.md +4 -0
- babeldoc-0.3.29/babeldoc/__init__.py +1 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/const.py +1 -1
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/typesetting.py +27 -3
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/main.py +1 -1
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/CONTRIBUTING.md +2 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/pyproject.toml +2 -2
- {babeldoc-0.3.28 → babeldoc-0.3.29}/uv.lock +1224 -1224
- babeldoc-0.3.28/babeldoc/__init__.py +0 -1
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.cursorignore +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/ISSUE_TEMPLATE/feature_request.yaml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/dependabot.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/labels.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/release-drafter.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/codeql.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/docs.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/labeler.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/lint.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/pr-lint.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/publish-to-pypi.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.github/workflows/test.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.gitignore +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/.pre-commit-config.yaml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/LICENSE +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/assets/assets.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/assets/embedding_assets_metadata.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/asynchronize/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/converter.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/babeldoc_exception/BabelDOCException.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/backend/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/backend/pdf_creater.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/frontend/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/frontend/il_creater.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/il_version_1.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/il_version_1.rnc +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/il_version_1.rng +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/il_version_1.xsd +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/add_debug_information.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/detect_scanned_file.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/il_translator.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/il_translator_llm_only.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/layout_parser.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/paragraph_finder.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/remove_descent.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/styles_and_formulas.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/midend/table_parser.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/translator/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/translator/cache.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/translator/translator.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/atomic_integer.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/fontmap.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/layout_helper.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/priority_thread_pool_executor.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/style_helper.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/utils/zstd_helper.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/document_il/xml_converter.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/docvision/README.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/docvision/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/docvision/doclayout.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/docvision/rpc_doclayout.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/docvision/table_detection/rapidocr.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/format/office/__init__.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/high_level.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/pdfinterp.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/progress_monitor.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/result_merger.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/split_manager.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/tools/generate_font_metadata.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/tools/italic_assistance.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/tools/italic_recognize_tool.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/babeldoc/translation_config.py +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/CODE_OF_CONDUCT.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/CONTRIBUTOR_REWARD.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/AsyncTranslate/AsyncTranslate.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/ILTranslator/ILTranslator.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/PDFCreation/PDFCreation.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/PDFParsing/PDFParsing.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/ParagraphFinding/ParagraphFinding.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/README.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/StylesAndFormulas/StylesAndFormulas.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/ImplementationDetails/Typesetting/Typesetting.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/README.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/deploy.sh +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-banner.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.svg +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-big-logo-with-transparent-background.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-big-logo-with-transparent-background.svg +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-big-logo.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-contributor_reward_example.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-preview.gif +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-small-logo-with-transparent-background.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-small-logo-with-transparent-background.svg +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/images/babeldoc-small-logo.png +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/index.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/intro-to-pdf-object.md +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/docs/requirements.txt +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/mkdocs.yml +0 -0
- {babeldoc-0.3.28 → babeldoc-0.3.29}/tests/test_translation_config.py +0 -0
|
@@ -13,6 +13,10 @@ body:
|
|
|
13
13
|
required: true
|
|
14
14
|
- label: I confirmed this is not caused by a network issue
|
|
15
15
|
required: true
|
|
16
|
+
- label: I have fully read and understood the [README](https://github.com/funstory-ai/BabelDOC/blob/main/README.md)
|
|
17
|
+
required: true
|
|
18
|
+
- label: I am certain that this issue is with BabelDOC itself and can be reproduced through the BabelDOC cli
|
|
19
|
+
required: true
|
|
16
20
|
|
|
17
21
|
- type: markdown
|
|
18
22
|
attributes:
|
|
@@ -52,7 +52,7 @@ body:
|
|
|
52
52
|
attributes:
|
|
53
53
|
label: Contributor Checklist
|
|
54
54
|
options:
|
|
55
|
-
- label: I’ve read the **CONTRIBUTING.md** guide
|
|
55
|
+
- label: I’ve fully read and understood the **[CONTRIBUTING.md](https://funstory-ai.github.io/BabelDOC/CONTRIBUTING/)** guide
|
|
56
56
|
required: true
|
|
57
57
|
- label: My changes follow the project’s code style and guidelines
|
|
58
58
|
required: true
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: BabelDOC
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.29
|
|
4
4
|
Summary: Yet Another Document Translator
|
|
5
5
|
Project-URL: Homepage, https://github.com/funstory-ai/BabelDOC
|
|
6
6
|
Project-URL: Issues, https://github.com/funstory-ai/BabelDOC/issues
|
|
@@ -306,6 +306,10 @@ report-interval = 0.5
|
|
|
306
306
|
> 1. Before pdf2zh 2.0 is released, you can temporarily use BabelDOC's Python API. However, after pdf2zh 2.0 is released, please directly use pdf2zh's Python API.
|
|
307
307
|
>
|
|
308
308
|
> 2. This project's Python API does not guarantee any compatibility. However, the Python API from pdf2zh will guarantee a certain level of compatibility.
|
|
309
|
+
>
|
|
310
|
+
> 3. We do not provide any technical support for the BabelDOC API.
|
|
311
|
+
>
|
|
312
|
+
> 4. When performing secondary development, please refer to [pdf2zh 2.0 high level](https://github.com/awwaawwa/PDFMathTranslate/blob/v2-rc/pdf2zh/high_level.py) and ensure that BabelDOC runs in a subprocess.
|
|
309
313
|
|
|
310
314
|
You can refer to the example in [main.py](https://github.com/funstory-ai/yadt/blob/main/babeldoc/main.py) to use BabelDOC's Python API.
|
|
311
315
|
|
|
@@ -257,6 +257,10 @@ report-interval = 0.5
|
|
|
257
257
|
> 1. Before pdf2zh 2.0 is released, you can temporarily use BabelDOC's Python API. However, after pdf2zh 2.0 is released, please directly use pdf2zh's Python API.
|
|
258
258
|
>
|
|
259
259
|
> 2. This project's Python API does not guarantee any compatibility. However, the Python API from pdf2zh will guarantee a certain level of compatibility.
|
|
260
|
+
>
|
|
261
|
+
> 3. We do not provide any technical support for the BabelDOC API.
|
|
262
|
+
>
|
|
263
|
+
> 4. When performing secondary development, please refer to [pdf2zh 2.0 high level](https://github.com/awwaawwa/PDFMathTranslate/blob/v2-rc/pdf2zh/high_level.py) and ensure that BabelDOC runs in a subprocess.
|
|
260
264
|
|
|
261
265
|
You can refer to the example in [main.py](https://github.com/funstory-ai/yadt/blob/main/babeldoc/main.py) to use BabelDOC's Python API.
|
|
262
266
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.3.29"
|
|
@@ -115,7 +115,7 @@ class TypesettingUnit:
|
|
|
115
115
|
r"\u0500-\u052F" # Cyrillic Supplement
|
|
116
116
|
r"\u0370-\u03FF" # Greek and Coptic
|
|
117
117
|
r"\u2DE0-\u2DFF" # Cyrillic Extended-A
|
|
118
|
-
r"\uA650-\uA69F" # Cyrillic Extended-B
|
|
118
|
+
r"\uA650-\uA69F" # Cyrillic Extended-B
|
|
119
119
|
r"\u1200-\u137F" # Ethiopic
|
|
120
120
|
r"\u1380-\u139F" # Ethiopic Supplement
|
|
121
121
|
r"\u2D80-\u2DDF" # Ethiopic Extended
|
|
@@ -148,7 +148,7 @@ class TypesettingUnit:
|
|
|
148
148
|
return True
|
|
149
149
|
|
|
150
150
|
@property
|
|
151
|
-
def
|
|
151
|
+
def is_cjk_char(self):
|
|
152
152
|
if self.formular:
|
|
153
153
|
return False
|
|
154
154
|
unicode = self.try_get_unicode()
|
|
@@ -185,6 +185,30 @@ class TypesettingUnit:
|
|
|
185
185
|
]:
|
|
186
186
|
return True
|
|
187
187
|
if unicode:
|
|
188
|
+
if re.match(
|
|
189
|
+
r"^["
|
|
190
|
+
r"\u3000-\u303f" # CJK Symbols and Punctuation
|
|
191
|
+
r"\u3040-\u309f" # Hiragana
|
|
192
|
+
r"\u30a0-\u30ff" # Katakana
|
|
193
|
+
r"\u3100-\u312f" # Bopomofo
|
|
194
|
+
r"\uac00-\ud7af" # Hangul Syllables
|
|
195
|
+
r"\u1100-\u11ff" # Hangul Jamo
|
|
196
|
+
r"\u3130-\u318f" # Hangul Compatibility Jamo
|
|
197
|
+
r"\ua960-\ua97f" # Hangul Jamo Extended-A
|
|
198
|
+
r"\ud7b0-\ud7ff" # Hangul Jamo Extended-B
|
|
199
|
+
r"\u3190-\u319f" # Kanbun
|
|
200
|
+
r"\u3200-\u32ff" # Enclosed CJK Letters and Months
|
|
201
|
+
r"\u3300-\u33ff" # CJK Compatibility
|
|
202
|
+
r"\ufe30-\ufe4f" # CJK Compatibility Forms
|
|
203
|
+
r"\u4e00-\u9fff" # CJK Unified Ideographs
|
|
204
|
+
r"\u2e80-\u2eff" # CJK Radicals Supplement
|
|
205
|
+
r"\u31c0-\u31ef" # CJK Strokes
|
|
206
|
+
r"\u2f00-\u2fdf" # Kangxi Radicals
|
|
207
|
+
r"\ufe10-\ufe1f" # Vertical Forms
|
|
208
|
+
r"]+$",
|
|
209
|
+
unicode,
|
|
210
|
+
):
|
|
211
|
+
return True
|
|
188
212
|
try:
|
|
189
213
|
unicodedata_name = unicodedata.name(unicode)
|
|
190
214
|
return (
|
|
@@ -696,7 +720,7 @@ class Typesetting:
|
|
|
696
720
|
|
|
697
721
|
if (
|
|
698
722
|
last_unit # 有上一个单元
|
|
699
|
-
and last_unit.
|
|
723
|
+
and last_unit.is_cjk_char ^ unit.is_cjk_char # 中英文交界处
|
|
700
724
|
and (
|
|
701
725
|
last_unit.box
|
|
702
726
|
and last_unit.box.y
|
|
@@ -39,6 +39,8 @@ Please pay special attention to:
|
|
|
39
39
|
> You can contact the maintainers in the pdf2zh discussion group.
|
|
40
40
|
>
|
|
41
41
|
> Due to the current high rate of code changes, this project only accepts small PRs. If you would like to suggest a change and you include a patch as a proof-of-concept, that would be great. However, please do not be offended if we rewrite your patch from scratch.
|
|
42
|
+
>
|
|
43
|
+
> Please discuss with the maintainers in the [Issue](https://github.com/funstory-ai/BabelDOC/issues) before sending a PR.
|
|
42
44
|
|
|
43
45
|
[//]: # (> We welcome pull requests and will review your contributions.)
|
|
44
46
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "BabelDOC"
|
|
3
|
-
version = "0.3.
|
|
3
|
+
version = "0.3.29"
|
|
4
4
|
description = "Yet Another Document Translator"
|
|
5
5
|
license = "AGPL-3.0"
|
|
6
6
|
readme = "README.md"
|
|
@@ -150,7 +150,7 @@ pythonpath = [".", "src"]
|
|
|
150
150
|
testpaths = ["tests"]
|
|
151
151
|
|
|
152
152
|
[bumpver]
|
|
153
|
-
current_version = "0.3.
|
|
153
|
+
current_version = "0.3.29"
|
|
154
154
|
version_pattern = "MAJOR.MINOR.PATCH[.PYTAGNUM]"
|
|
155
155
|
|
|
156
156
|
[bumpver.file_patterns]
|