Просмотр исходного кода

Update converter.py

Fix issues:
https://github.com/Byaidu/PDFMathTranslate/issues/345
https://github.com/Byaidu/PDFMathTranslate/issues/326
When translate Chinese pdf to English, an error occurs:
UnicodeDecodeError: 'utf-8' codec can't decode byte....
Polly 1 год назад
Родитель
Сommit
4cf8eec2f8
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      pdf2zh/converter.py

+ 4 - 1
pdf2zh/converter.py

@@ -188,7 +188,10 @@ class TranslateConverter(PDFConverterEx):
 
 
         def vflag(font: str, char: str):    # 匹配公式(和角标)字体
         def vflag(font: str, char: str):    # 匹配公式(和角标)字体
             if isinstance(font, bytes):     # 不一定能 decode,直接转 str
             if isinstance(font, bytes):     # 不一定能 decode,直接转 str
-                font = str(font)
+                try:
+                    font = font.decode('utf-8')  # 尝试使用 UTF-8 解码
+                except UnicodeDecodeError:
+                    font = ""
             font = font.split("+")[-1]      # 字体名截断
             font = font.split("+")[-1]      # 字体名截断
             if re.match(r"\(cid:", char):
             if re.match(r"\(cid:", char):
                 return True
                 return True