bookfere / Ebook-Translator-Calibre-Plugin

A Calibre plugin to translate ebook into a specified language.
https://translator.bookfere.com
GNU General Public License v3.0
1.72k stars 113 forks source link

[功能请求] PDF 段落重排改善排版质量 #264

Open Andy-AO opened 7 months ago

Andy-AO commented 7 months ago

对于pdf来说,翻译的时候需要转换成epub,这个过程中有个很常见的问题是段落划分错误,导致文本可读性降低。 如果逐行翻译的话,那么将会降低到难以忍受的程度,如果合并翻译的话,那么容易导致合并翻译行数不一致。 建议为pdf增加一个「段落重排」的预处理。 灵感来自WPS文字中的「段落重排」,现在翻译pdf会先转换成word,然后调用「段落重排」,「段落重排」在wps中的运行速度非常快,能够以低成本明显改善文件质量。

GoTop commented 7 months ago

也就是说,我们自己用wps打开pdf,对其使用wps的"段落重排",再另存为word,然后再使用插件进行翻译不就行了?

不需要让插件再去实现wps里的功能了吧

Benson1997 commented 7 months ago

楼主意思,应该是希望直接以后能支持翻译文本型的pdf吧?pdf转word的工具挺多的,段落问题也好解决。

GoTop commented 7 months ago

楼主意思,应该是希望直接以后能支持翻译文本型的pdf吧?pdf转word的工具挺多的,段落问题也好解决。

请问哪个工具可以解决pdf转word后,段落中的换行问题?

Andy-AO commented 7 months ago

对于行的合并来说,可以使用LLM对于这些行进行预处理。 对于没有以标点符号结尾的行,把前文和后文摘录出来问LLM是一个句子可能性有多大,超过阈值判定为一个句子。 如果是的话那么就合并,如果不是就不合并。 通用的模型加提示工程估计就可以起到比较好的效果。

GoTop commented 7 months ago

对于行的合并来说,可以使用LLM对于这些行进行预处理。 对于没有以标点符号结尾的行,把前文和后文摘录出来问LLM是一个句子可能性有多大,超过阈值判定为一个句子。 如果是的话那么就合并,如果不是就不合并。 通用的模型加提示工程估计就可以起到比较好的效果。

有哪款免费的程序或者软件可以实现么?WPS的这个功能要付费会员才能用

GoTop commented 7 months ago

对于行的合并来说,可以使用LLM对于这些行进行预处理。 对于没有以标点符号结尾的行,把前文和后文摘录出来问LLM是一个句子可能性有多大,超过阈值判定为一个句子。 如果是的话那么就合并,如果不是就不合并。 通用的模型加提示工程估计就可以起到比较好的效果。

这个需要自己编程才能实现吧?有类似的代码的例子吗?

Benson1997 commented 7 months ago

楼主意思,应该是希望直接以后能支持翻译文本型的pdf吧?pdf转word的工具挺多的,段落问题也好解决。

请问哪个工具可以解决pdf转word后,段落中的换行问题?

pdf转word用的不多,我记得可以直接用word打开pdf,大部分换行转化的还是比较良好。剩下一些,用正则或者通配符,进行替换下基本就够用。当然不是非常严格,自己阅读用的 话,是够用的了。

EaglePPP commented 7 months ago

对于pdf来说,翻译的时候需要转换成epub,这个过程中有个很常见的问题是段落划分错误,导致文本可读性降低。 如果逐行翻译的话,那么将会降低到难以忍受的程度,如果合并翻译的话,那么容易导致合并翻译行数不一致。 建议为pdf增加一个「段落重排」的预处理。 灵感来自WPS文字中的「段落重排」,现在翻译pdf会先转换成word,然后调用「段落重排」,「段落重排」在wps中的运行速度非常快,能够以低成本明显改善文件质量。

确实,一本pdf的书,直接尝试进行翻译有4300个翻译条目,转为word只有1900个。每个段落是真正的段落而不是一两行,这样翻译出来的意思更好,发送的request更少(有些api有每分钟request限制,例如claude)。

也就是说,我们自己用wps打开pdf,对其使用wps的"段落重排",再另存为word,然后再使用插件进行翻译不就行了?

不需要让插件再去实现wps里的功能了吧

如果能集成这个功能,而不是需要用word先转换了再进行翻译可以方便很多。

GoTop commented 7 months ago

楼主意思,应该是希望直接以后能支持翻译文本型的pdf吧?pdf转word的工具挺多的,段落问题也好解决。

请问哪个工具可以解决pdf转word后,段落中的换行问题?

pdf转word用的不多,我记得可以直接用word打开pdf,大部分换行转化的还是比较良好。剩下一些,用正则或者通配符,进行替换下基本就够用。当然不是非常严格,自己阅读用的 话,是够用的了。

用word打开pdf,编辑多余的元素之后保存为docx,然后再calibre中将docx转换成epub,应该是目前比较好的解决方案

还有一种方法是使用abbyy reader将pdf转换为epub,不过感觉效果没有word好 但是如果是扫描版的pdf,这种方法不失为一种选择

drkhateeb commented 6 months ago

Solid PDF converter is very powerful to convert PDF to Word docx https://www.soliddocuments.com/pdf/new_in_v8/314/1

https://www.soliddocuments.com/products.htm?product=SolidPDFtoWord SDK: https://apryse.com/brands/soliddocuments


https://www.pixelplanet.com/pdfgrabber/features/pdf-to-word/ convert PDF to Word , HTML5