BabelDOC 0.4.17__tar.gz → 0.4.18__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.
Files changed (304) hide show
  1. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/ISSUE_TEMPLATE/bug_report.yaml +2 -0
  2. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/ISSUE_TEMPLATE/feature_request.yaml +10 -0
  3. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/docs.yml +1 -1
  4. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/publish-to-pypi.yml +1 -1
  5. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/test.yml +1 -1
  6. {babeldoc-0.4.17 → babeldoc-0.4.18}/PKG-INFO +1 -1
  7. babeldoc-0.4.18/babeldoc/__init__.py +1 -0
  8. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/const.py +1 -1
  9. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/frontend/il_creater.py +1 -1
  10. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/high_level.py +15 -11
  11. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/main.py +1 -1
  12. {babeldoc-0.4.17 → babeldoc-0.4.18}/pyproject.toml +2 -2
  13. babeldoc-0.4.17/babeldoc/__init__.py +0 -1
  14. {babeldoc-0.4.17 → babeldoc-0.4.18}/.cursorignore +0 -0
  15. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/PULL_REQUEST_TEMPLATE/pr_form.yml +0 -0
  16. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  17. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/dependabot.yml +0 -0
  18. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/labels.yml +0 -0
  19. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/release-drafter.yml +0 -0
  20. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/codeql.yml +0 -0
  21. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/labeler.yml +0 -0
  22. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/lint.yml +0 -0
  23. {babeldoc-0.4.17 → babeldoc-0.4.18}/.github/workflows/pr-lint.yml +0 -0
  24. {babeldoc-0.4.17 → babeldoc-0.4.18}/.gitignore +0 -0
  25. {babeldoc-0.4.17 → babeldoc-0.4.18}/.pre-commit-config.yaml +0 -0
  26. {babeldoc-0.4.17 → babeldoc-0.4.18}/LICENSE +0 -0
  27. {babeldoc-0.4.17 → babeldoc-0.4.18}/README.md +0 -0
  28. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/assets/assets.py +0 -0
  29. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/assets/embedding_assets_metadata.py +0 -0
  30. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/asynchronize/__init__.py +0 -0
  31. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/babeldoc_exception/BabelDOCException.py +0 -0
  32. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/babeldoc_exception/__init__.py +0 -0
  33. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/README.md +0 -0
  34. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/__init__.py +0 -0
  35. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/base_doclayout.py +0 -0
  36. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/doclayout.py +0 -0
  37. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/rpc_doclayout.py +0 -0
  38. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/rpc_doclayout2.py +0 -0
  39. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/rpc_doclayout3.py +0 -0
  40. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/rpc_doclayout4.py +0 -0
  41. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/docvision/table_detection/rapidocr.py +0 -0
  42. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/__init__.py +0 -0
  43. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/__init__.py +0 -0
  44. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/babelpdf/base14.py +0 -0
  45. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/babelpdf/encoding.py +0 -0
  46. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/converter.py +0 -0
  47. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/__init__.py +0 -0
  48. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/backend/__init__.py +0 -0
  49. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/backend/pdf_creater.py +0 -0
  50. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/frontend/__init__.py +0 -0
  51. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/il_version_1.py +0 -0
  52. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/il_version_1.rnc +0 -0
  53. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/il_version_1.rng +0 -0
  54. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/il_version_1.xsd +0 -0
  55. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/__init__.py +0 -0
  56. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/add_debug_information.py +0 -0
  57. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/automatic_term_extractor.py +0 -0
  58. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/detect_scanned_file.py +0 -0
  59. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/il_translator.py +0 -0
  60. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/il_translator_llm_only.py +0 -0
  61. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/layout_parser.py +0 -0
  62. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/paragraph_finder.py +0 -0
  63. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/remove_descent.py +0 -0
  64. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/styles_and_formulas.py +0 -0
  65. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/table_parser.py +0 -0
  66. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/midend/typesetting.py +0 -0
  67. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/__init__.py +0 -0
  68. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/fontmap.py +0 -0
  69. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/formular_helper.py +0 -0
  70. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/layout_helper.py +0 -0
  71. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/mupdf_helper.py +0 -0
  72. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/paragraph_helper.py +0 -0
  73. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/style_helper.py +0 -0
  74. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/utils/zstd_helper.py +0 -0
  75. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/document_il/xml_converter.py +0 -0
  76. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/pdfinterp.py +0 -0
  77. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/result_merger.py +0 -0
  78. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/split_manager.py +0 -0
  79. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/format/pdf/translation_config.py +0 -0
  80. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/glossary.py +0 -0
  81. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/LICENSE +0 -0
  82. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/__init__.py +0 -0
  83. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/_saslprep.py +0 -0
  84. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/arcfour.py +0 -0
  85. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/ascii85.py +0 -0
  86. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/casting.py +0 -0
  87. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/ccitt.py +0 -0
  88. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-EUC-H.pickle.gz +0 -0
  89. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-EUC-V.pickle.gz +0 -0
  90. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-H.pickle.gz +0 -0
  91. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-RKSJ-H.pickle.gz +0 -0
  92. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-RKSJ-V.pickle.gz +0 -0
  93. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78-V.pickle.gz +0 -0
  94. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78ms-RKSJ-H.pickle.gz +0 -0
  95. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/78ms-RKSJ-V.pickle.gz +0 -0
  96. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/83pv-RKSJ-H.pickle.gz +0 -0
  97. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/83pv-RKSJ-V.pickle.gz +0 -0
  98. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90ms-RKSJ-H.pickle.gz +0 -0
  99. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90ms-RKSJ-V.pickle.gz +0 -0
  100. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90msp-RKSJ-H.pickle.gz +0 -0
  101. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90msp-RKSJ-V.pickle.gz +0 -0
  102. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90pv-RKSJ-H.pickle.gz +0 -0
  103. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/90pv-RKSJ-V.pickle.gz +0 -0
  104. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Add-H.pickle.gz +0 -0
  105. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Add-RKSJ-H.pickle.gz +0 -0
  106. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Add-RKSJ-V.pickle.gz +0 -0
  107. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Add-V.pickle.gz +0 -0
  108. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/B5-H.pickle.gz +0 -0
  109. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/B5-V.pickle.gz +0 -0
  110. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/B5pc-H.pickle.gz +0 -0
  111. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/B5pc-V.pickle.gz +0 -0
  112. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS-EUC-H.pickle.gz +0 -0
  113. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS-EUC-V.pickle.gz +0 -0
  114. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS1-H.pickle.gz +0 -0
  115. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS1-V.pickle.gz +0 -0
  116. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS2-H.pickle.gz +0 -0
  117. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/CNS2-V.pickle.gz +0 -0
  118. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETHK-B5-H.pickle.gz +0 -0
  119. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETHK-B5-V.pickle.gz +0 -0
  120. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETen-B5-H.pickle.gz +0 -0
  121. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETen-B5-V.pickle.gz +0 -0
  122. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETenms-B5-H.pickle.gz +0 -0
  123. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/ETenms-B5-V.pickle.gz +0 -0
  124. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/EUC-H.pickle.gz +0 -0
  125. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/EUC-V.pickle.gz +0 -0
  126. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Ext-H.pickle.gz +0 -0
  127. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Ext-RKSJ-H.pickle.gz +0 -0
  128. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Ext-RKSJ-V.pickle.gz +0 -0
  129. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Ext-V.pickle.gz +0 -0
  130. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GB-EUC-H.pickle.gz +0 -0
  131. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GB-EUC-V.pickle.gz +0 -0
  132. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GB-H.pickle.gz +0 -0
  133. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GB-V.pickle.gz +0 -0
  134. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBK-EUC-H.pickle.gz +0 -0
  135. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBK-EUC-V.pickle.gz +0 -0
  136. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBK2K-H.pickle.gz +0 -0
  137. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBK2K-V.pickle.gz +0 -0
  138. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBKp-EUC-H.pickle.gz +0 -0
  139. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBKp-EUC-V.pickle.gz +0 -0
  140. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBT-EUC-H.pickle.gz +0 -0
  141. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBT-EUC-V.pickle.gz +0 -0
  142. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBT-H.pickle.gz +0 -0
  143. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBT-V.pickle.gz +0 -0
  144. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBTpc-EUC-H.pickle.gz +0 -0
  145. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBTpc-EUC-V.pickle.gz +0 -0
  146. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBpc-EUC-H.pickle.gz +0 -0
  147. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/GBpc-EUC-V.pickle.gz +0 -0
  148. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/H.pickle.gz +0 -0
  149. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKdla-B5-H.pickle.gz +0 -0
  150. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKdla-B5-V.pickle.gz +0 -0
  151. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKdlb-B5-H.pickle.gz +0 -0
  152. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKdlb-B5-V.pickle.gz +0 -0
  153. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKgccs-B5-H.pickle.gz +0 -0
  154. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKgccs-B5-V.pickle.gz +0 -0
  155. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKm314-B5-H.pickle.gz +0 -0
  156. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKm314-B5-V.pickle.gz +0 -0
  157. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKm471-B5-H.pickle.gz +0 -0
  158. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKm471-B5-V.pickle.gz +0 -0
  159. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKscs-B5-H.pickle.gz +0 -0
  160. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/HKscs-B5-V.pickle.gz +0 -0
  161. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Hankaku-H.pickle.gz +0 -0
  162. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Hankaku-V.pickle.gz +0 -0
  163. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Hiragana-H.pickle.gz +0 -0
  164. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Hiragana-V.pickle.gz +0 -0
  165. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-EUC-H.pickle.gz +0 -0
  166. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-EUC-V.pickle.gz +0 -0
  167. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-H.pickle.gz +0 -0
  168. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-Johab-H.pickle.gz +0 -0
  169. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-Johab-V.pickle.gz +0 -0
  170. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSC-V.pickle.gz +0 -0
  171. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCms-UHC-H.pickle.gz +0 -0
  172. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCms-UHC-HW-H.pickle.gz +0 -0
  173. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCms-UHC-HW-V.pickle.gz +0 -0
  174. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCms-UHC-V.pickle.gz +0 -0
  175. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCpc-EUC-H.pickle.gz +0 -0
  176. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/KSCpc-EUC-V.pickle.gz +0 -0
  177. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Katakana-H.pickle.gz +0 -0
  178. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Katakana-V.pickle.gz +0 -0
  179. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/NWP-H.pickle.gz +0 -0
  180. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/NWP-V.pickle.gz +0 -0
  181. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/README.txt +0 -0
  182. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/RKSJ-H.pickle.gz +0 -0
  183. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/RKSJ-V.pickle.gz +0 -0
  184. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Roman-H.pickle.gz +0 -0
  185. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/Roman-V.pickle.gz +0 -0
  186. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UCS2-H.pickle.gz +0 -0
  187. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UCS2-V.pickle.gz +0 -0
  188. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF16-H.pickle.gz +0 -0
  189. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF16-V.pickle.gz +0 -0
  190. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF32-H.pickle.gz +0 -0
  191. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF32-V.pickle.gz +0 -0
  192. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF8-H.pickle.gz +0 -0
  193. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniCNS-UTF8-V.pickle.gz +0 -0
  194. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UCS2-H.pickle.gz +0 -0
  195. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UCS2-V.pickle.gz +0 -0
  196. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF16-H.pickle.gz +0 -0
  197. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF16-V.pickle.gz +0 -0
  198. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF32-H.pickle.gz +0 -0
  199. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF32-V.pickle.gz +0 -0
  200. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF8-H.pickle.gz +0 -0
  201. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniGB-UTF8-V.pickle.gz +0 -0
  202. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UCS2-H.pickle.gz +0 -0
  203. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UCS2-HW-H.pickle.gz +0 -0
  204. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UCS2-HW-V.pickle.gz +0 -0
  205. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UCS2-V.pickle.gz +0 -0
  206. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF16-H.pickle.gz +0 -0
  207. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF16-V.pickle.gz +0 -0
  208. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF32-H.pickle.gz +0 -0
  209. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF32-V.pickle.gz +0 -0
  210. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF8-H.pickle.gz +0 -0
  211. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS-UTF8-V.pickle.gz +0 -0
  212. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF16-H.pickle.gz +0 -0
  213. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF16-V.pickle.gz +0 -0
  214. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF32-H.pickle.gz +0 -0
  215. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF32-V.pickle.gz +0 -0
  216. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF8-H.pickle.gz +0 -0
  217. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJIS2004-UTF8-V.pickle.gz +0 -0
  218. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJISX0213-UTF32-H.pickle.gz +0 -0
  219. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJISX0213-UTF32-V.pickle.gz +0 -0
  220. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJISX02132004-UTF32-H.pickle.gz +0 -0
  221. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniJISX02132004-UTF32-V.pickle.gz +0 -0
  222. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UCS2-H.pickle.gz +0 -0
  223. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UCS2-V.pickle.gz +0 -0
  224. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF16-H.pickle.gz +0 -0
  225. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF16-V.pickle.gz +0 -0
  226. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF32-H.pickle.gz +0 -0
  227. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF32-V.pickle.gz +0 -0
  228. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF8-H.pickle.gz +0 -0
  229. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/UniKS-UTF8-V.pickle.gz +0 -0
  230. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/V.pickle.gz +0 -0
  231. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/WP-Symbol-H.pickle.gz +0 -0
  232. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/WP-Symbol-V.pickle.gz +0 -0
  233. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/to-unicode-Adobe-CNS1.pickle.gz +0 -0
  234. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/to-unicode-Adobe-GB1.pickle.gz +0 -0
  235. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/to-unicode-Adobe-Japan1.pickle.gz +0 -0
  236. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmap/to-unicode-Adobe-Korea1.pickle.gz +0 -0
  237. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/cmapdb.py +0 -0
  238. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/converter.py +0 -0
  239. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/data_structures.py +0 -0
  240. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/encodingdb.py +0 -0
  241. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/fontmetrics.py +0 -0
  242. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/glyphlist.py +0 -0
  243. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/high_level.py +0 -0
  244. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/image.py +0 -0
  245. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/jbig2.py +0 -0
  246. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/latin_enc.py +0 -0
  247. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/layout.py +0 -0
  248. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/lzw.py +0 -0
  249. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfcolor.py +0 -0
  250. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfdevice.py +0 -0
  251. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfdocument.py +0 -0
  252. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfexceptions.py +0 -0
  253. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdffont.py +0 -0
  254. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfinterp.py +0 -0
  255. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfpage.py +0 -0
  256. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdfparser.py +0 -0
  257. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/pdftypes.py +0 -0
  258. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/psexceptions.py +0 -0
  259. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/psparser.py +0 -0
  260. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/py.typed +0 -0
  261. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/runlength.py +0 -0
  262. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/settings.py +0 -0
  263. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/pdfminer/utils.py +0 -0
  264. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/progress_monitor.py +0 -0
  265. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/tools/generate_font_metadata.py +0 -0
  266. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/tools/italic_assistance.py +0 -0
  267. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/tools/italic_recognize_tool.py +0 -0
  268. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/translator/__init__.py +0 -0
  269. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/translator/cache.py +0 -0
  270. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/translator/translator.py +0 -0
  271. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/utils/__init__.py +0 -0
  272. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/utils/atomic_integer.py +0 -0
  273. {babeldoc-0.4.17 → babeldoc-0.4.18}/babeldoc/utils/priority_thread_pool_executor.py +0 -0
  274. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/CODE_OF_CONDUCT.md +0 -0
  275. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/CONTRIBUTING.md +0 -0
  276. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/CONTRIBUTOR_REWARD.md +0 -0
  277. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/AsyncTranslate/AsyncTranslate.md +0 -0
  278. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/ILTranslator/ILTranslator.md +0 -0
  279. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/PDFCreation/PDFCreation.md +0 -0
  280. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/PDFParsing/PDFParsing.md +0 -0
  281. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/ParagraphFinding/ParagraphFinding.md +0 -0
  282. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/README.md +0 -0
  283. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/StylesAndFormulas/StylesAndFormulas.md +0 -0
  284. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/ImplementationDetails/Typesetting/Typesetting.md +0 -0
  285. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/README.md +0 -0
  286. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/deploy.sh +0 -0
  287. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/example/demo_glossary.csv +0 -0
  288. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-banner.png +0 -0
  289. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.png +0 -0
  290. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-big-logo-darkmode-with-transparent-background.svg +0 -0
  291. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-big-logo-with-transparent-background.png +0 -0
  292. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-big-logo-with-transparent-background.svg +0 -0
  293. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-big-logo.png +0 -0
  294. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-contributor_reward_example.png +0 -0
  295. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-preview.gif +0 -0
  296. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-small-logo-with-transparent-background.png +0 -0
  297. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-small-logo-with-transparent-background.svg +0 -0
  298. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/images/babeldoc-small-logo.png +0 -0
  299. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/index.md +0 -0
  300. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/intro-to-pdf-object.md +0 -0
  301. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/requirements.txt +0 -0
  302. {babeldoc-0.4.17 → babeldoc-0.4.18}/docs/supported_languages.md +0 -0
  303. {babeldoc-0.4.17 → babeldoc-0.4.18}/mkdocs.yml +0 -0
  304. {babeldoc-0.4.17 → babeldoc-0.4.18}/tests/test_translation_config.py +0 -0
@@ -21,6 +21,8 @@ body:
21
21
  required: true
22
22
  - label: I have uploaded the log.
23
23
  required: true
24
+ - label: I confirm that the latest version of BabelDOC is being used.
25
+ required: true
24
26
 
25
27
  - type: markdown
26
28
  attributes:
@@ -7,6 +7,16 @@ body:
7
7
  value: |
8
8
  Thank you for helping improve **BabelDOC**! Please fill out the form below to suggest a feature.
9
9
 
10
+ - type: checkboxes
11
+ id: checks
12
+ attributes:
13
+ label: Before you submit
14
+ options:
15
+ - label: I have searched existing issues
16
+ required: true
17
+ - label: I have fully read and understood the [README](https://github.com/funstory-ai/BabelDOC/blob/main/README.md)
18
+ required: true
19
+
10
20
  - type: textarea
11
21
  id: describe
12
22
  attributes:
@@ -17,7 +17,7 @@ jobs:
17
17
  git config user.name github-actions[bot]
18
18
  git config user.email 41898282+github-actions[bot]@users.noreply.github.com
19
19
  - name: Setup uv with Python 3.12
20
- uses: astral-sh/setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
20
+ uses: astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc # v6.4.3
21
21
  with:
22
22
  python-version: "3.12"
23
23
  enable-cache: true
@@ -35,7 +35,7 @@ jobs:
35
35
  token: ${{ secrets.GITHUB_TOKEN }}
36
36
 
37
37
  - name: Setup uv with Python 3.12
38
- uses: astral-sh/setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
38
+ uses: astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc # v6.4.3
39
39
  with:
40
40
  python-version: "3.12"
41
41
  enable-cache: true
@@ -28,7 +28,7 @@ jobs:
28
28
  path: ~/.cache/babeldoc
29
29
  key: babeldoc-assets-${{ hashFiles('babeldoc/assets/embedding_assets_metadata.py') }}
30
30
  - name: Setup uv with Python ${{ matrix.python-version }}
31
- uses: astral-sh/setup-uv@7edac99f961f18b581bbd960d59d049f04c0002f # v6.4.1
31
+ uses: astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc # v6.4.3
32
32
  with:
33
33
  python-version: ${{ matrix.python-version }}
34
34
  enable-cache: true
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: BabelDOC
3
- Version: 0.4.17
3
+ Version: 0.4.18
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
@@ -0,0 +1 @@
1
+ __version__ = "0.4.18"
@@ -3,7 +3,7 @@ import shutil
3
3
  import subprocess
4
4
  from pathlib import Path
5
5
 
6
- __version__ = "0.4.17"
6
+ __version__ = "0.4.18"
7
7
 
8
8
  CACHE_FOLDER = Path.home() / ".cache" / "babeldoc"
9
9
 
@@ -224,7 +224,7 @@ space_regex = re.compile(pattern)
224
224
 
225
225
  def get_rotation_angle(matrix):
226
226
  """
227
- 根据PDF的字符矩阵计算旋转角度(单位:度)
227
+ 根据 PDF 的字符矩阵计算旋转角度(单位:度)
228
228
  matrix: tuple/list, 格式 (a, b, c, d, e, f)
229
229
  """
230
230
  a, b, c, d, e, f = matrix
@@ -88,6 +88,15 @@ resfont_map = {
88
88
  }
89
89
 
90
90
 
91
+ def safe_save(doc, *args, **kwargs):
92
+ try:
93
+ # first try, saving without options
94
+ doc.save(*args, **kwargs)
95
+ except Exception:
96
+ # second try, saving with 'garbage=3' for object missing
97
+ doc.ez_save(*args, **kwargs)
98
+
99
+
91
100
  def fix_cmap(translate_result: TranslateResult, translate_config: TranslationConfig):
92
101
  processed = []
93
102
  for attr in (
@@ -104,7 +113,7 @@ def fix_cmap(translate_result: TranslateResult, translate_config: TranslationCon
104
113
  temp_path = translate_config.get_working_file_path(f"{path.stem}.cmap.pdf")
105
114
  pdf = pymupdf.open(path)
106
115
  reproduce_cmap(pdf)
107
- pdf.save(temp_path)
116
+ safe_save(pdf, temp_path)
108
117
  shutil.move(temp_path, path)
109
118
 
110
119
 
@@ -563,7 +572,7 @@ def do_translate(
563
572
  from_page=split_point.start_page,
564
573
  to_page=split_point.end_page,
565
574
  )
566
- temp_doc.save(part_temp_input_path)
575
+ safe_save(temp_doc, part_temp_input_path)
567
576
  assert (
568
577
  temp_doc.page_count
569
578
  == split_point.end_page - split_point.start_page + 1
@@ -762,18 +771,13 @@ def _do_translate_single(
762
771
  fix_null_xref(doc_input)
763
772
  except Exception:
764
773
  logger.exception("auto fix failed, please check the pdf file")
765
- doc_input.save(output_path, expand=True, pretty=True)
774
+ safe_save(doc_input, output_path, expand=True, pretty=True)
766
775
  del doc_input
767
776
 
768
777
  # Continue with original processing
769
778
  temp_pdf_path = translation_config.get_working_file_path("input.pdf")
770
779
  doc_pdf2zh = Document(original_pdf_path)
771
- try:
772
- # first try, saving without options
773
- doc_pdf2zh.save(temp_pdf_path)
774
- except Exception:
775
- # second try, saving with 'garbage=3' for object missing
776
- doc_pdf2zh.ez_save(temp_pdf_path)
780
+ safe_save(doc_pdf2zh, temp_pdf_path)
777
781
 
778
782
  # Fix null xref in PDF file
779
783
  invalid_pages = []
@@ -790,7 +794,7 @@ def _do_translate_single(
790
794
  # page.insert_font(resfont, None)
791
795
 
792
796
  resfont = None
793
- doc_pdf2zh.save(temp_pdf_path)
797
+ safe_save(doc_pdf2zh, temp_pdf_path)
794
798
 
795
799
  # if not translation_config.skip_scanned_detection and DetectScannedFile(
796
800
  # translation_config
@@ -991,7 +995,7 @@ def generate_first_page_with_watermark(
991
995
  watermarked_temp_pdf_path = watermarked_config.get_working_file_path(
992
996
  "watermarked_temp_input.pdf"
993
997
  )
994
- first_page_doc.save(watermarked_temp_pdf_path)
998
+ safe_save(first_page_doc, watermarked_temp_pdf_path)
995
999
 
996
1000
  Typesetting(watermarked_config).typsetting_document(il_only_first_page_doc)
997
1001
  pdf_creater = PDFCreater(
@@ -22,7 +22,7 @@ from babeldoc.translator.translator import OpenAITranslator
22
22
  from babeldoc.translator.translator import set_translate_rate_limiter
23
23
 
24
24
  logger = logging.getLogger(__name__)
25
- __version__ = "0.4.17"
25
+ __version__ = "0.4.18"
26
26
 
27
27
 
28
28
  def create_parser():
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "BabelDOC"
3
- version = "0.4.17"
3
+ version = "0.4.18"
4
4
  description = "Yet Another Document Translator"
5
5
  license = "AGPL-3.0"
6
6
  readme = "README.md"
@@ -161,7 +161,7 @@ pythonpath = [".", "src"]
161
161
  testpaths = ["tests"]
162
162
 
163
163
  [bumpver]
164
- current_version = "0.4.17"
164
+ current_version = "0.4.18"
165
165
  version_pattern = "MAJOR.MINOR.PATCH[.PYTAGNUM]"
166
166
 
167
167
  [bumpver.file_patterns]
@@ -1 +0,0 @@
1
- __version__ = "0.4.17"
File without changes
File without changes
File without changes
File without changes
File without changes