V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
kingba
V2EX  ›  分享创造

从英文 PDF 自动创建中英双语 PDF,并列显示左英文右中文,让你看英文更省力,代码开源

  •  1
     
  •   kingba · 2020-07-19 00:42:00 +08:00 · 6127 次点击
    这是一个创建于 1349 天前的主题,其中的信息可能已经有所发展或是发生改变。

    不清楚大家有没有遇到过我这个问题:

    想看英文的书,但希望能快速读完,因为书里至少一半的内容是可以快速读过,只有少部分内容需要精读。

    本人的英文阅读能力勉强能用,但读大段英文时速度比较慢,如果能把英文书中的大部分内容翻译成中文,那我就能快速定位到哪里是书中需要我重点阅读的,提早跳过那些只要扫一眼的内容,就能大大加快我的阅读速度了。

    要快速定位,只有母语(中文)速度最快。所以希望能有更快的阅读方式。期望的目标是可以在 PDF 中生成双语内容,既包含中文,也包含英文,最好可以并列显示,以便在看到重要内容时及时转到英文页面阅读。

    期望效果大概这样:

    demo image

    用了几个库勉强完成了这样的效果,如果有兴趣的话可以下载这个 PDF 看最终效果:Think Complexity 第 2 版 中英混译,推荐使用 PDF 阅读器的 双页模式 左边英文,右边中文,效果更佳

    代码开放在 https://github.com/kingbase/bilingual-pdf 有兴趣的可以 clone 试用。

    因为引用的库的原因,目前仅支持 Windows,抱歉。

    22 条回复    2021-02-12 22:31:09 +08:00
    Baboonowen
        1
    Baboonowen  
       2020-07-19 00:57:39 +08:00 via Android
    不错 支持
    leimao
        2
    leimao  
       2020-07-19 01:32:18 +08:00
    虽然我不会去用这个工具,但是我觉得还是一个 Good Job 。Well Done 。
    GPLer
        3
    GPLer  
       2020-07-19 03:16:27 +08:00
    好想法,想在大屏安卓电纸书上做一个类似产品。
    shuangxige
        4
    shuangxige  
       2020-07-19 05:35:13 +08:00 via iPhone
    点赞👍
    threebr
        5
    threebr  
       2020-07-19 06:14:17 +08:00 via Android
    厉害,不知道对排班的支持怎么样
    iplcbest
        6
    iplcbest  
       2020-07-19 07:26:34 +08:00 via iPhone
    Pdf 排版容易很乱,想法不错
    thedrwu
        7
    thedrwu  
       2020-07-19 09:16:37 +08:00 via Android
    回想起来,看理工科的书,不论难易,好像大多只需要看图和公式。
    若是需要精读的文字,科技汉语反而不如外语的词汇精确。
    cambo0
        8
    cambo0  
       2020-07-19 09:41:33 +08:00 via iPhone
    这个想法不错,翻译的精度也不用太高,明白意思就行
    12345tiger
        9
    12345tiger  
       2020-07-19 10:13:06 +08:00 via Android
    good job ! 以前还看到过一个项目,用户上传英文文献 pdf,然后会在英文的行间标注中文翻译(非全文翻译,仅标注非常见词),阅读效果不错。
    Juszoe
        10
    Juszoe  
       2020-07-19 12:29:14 +08:00
    正好需要,可惜只能支持 win,Mac 用户只能看着
    aec4d
        11
    aec4d  
       2020-07-19 13:37:12 +08:00
    如果用你这个思路,不需要编程也可以,使用 pdfonline 的在线服务转换成 word,使用 deepl 的翻译服务翻译 word,在使用 word 转 pdf 服务转换回来

    @kingba 另外问一下,哪个 PDF 阅读器能比较好的支持双页模式
    kingba
        12
    kingba  
    OP
       2020-07-19 15:21:30 +08:00
    @threebr 排版主要是依靠一个收费转换库的试用版本,而且利用了一些 dirty trick,只能说对版式简单的书籍没啥问题,如果是学术论文那种双栏式的,就很勉强了。
    @iplcbest 是的,还是得靠第三方库来保证排版,我这边只是做了些组合的工作。
    kingba
        13
    kingba  
    OP
       2020-07-19 15:27:19 +08:00
    @aec4d 你说的对,这样是完全可以的。可能唯一实现不了的就是对版式对照形式的保持。
    直接组合的话,生成的 PDF 应该是原文整体在前,译文整体在后。
    我这边实际主要做的就是原文某个单页在前,原文单页对应的译文单页紧随其后,以实现双页对照显示的效果。
    如果原文译文距离太远,翻阅起来会比较麻烦。
    另外就是把这些现有的库、API 尽可能简单(可能没达到效果)的组合起来。

    至于双页模式的话,其实我没怎么挑,我平时用的是 Foxit Reader 和 PDF Xchange Viewer 效果都过得去。
    Mindjet
        14
    Mindjet  
       2020-07-19 19:12:42 +08:00
    @kingba #13
    这个想法真的非常好,收藏了!

    国内已经有人想到并开发了文档和网页的对照翻译,叫做彩云小译,上传 pdf 或者 word 电子书,可以翻译成中英对照,而且不是一页一页对照,而是一段一段的对照。

    彩云小译的产品都是这个特点,网页和文档都是如此。

    都有免费体验的名额,可以注册个账号试试看,也许能获得一些启发。

    已经购买会员,目前用着还挺好。
    Mindjet
        15
    Mindjet  
       2020-07-19 19:15:41 +08:00
    对于大多数人来说,母语肯定比外语流利,有的人会看不起外语不行的同行,这是鄙视链,没办法。对于普通人来说,翻译非常有必要。好消息是随着机器学习的发展和应用,翻译软件会越做越好,打破语言壁垒是大趋势。
    Tianyan
        16
    Tianyan  
       2020-07-19 21:40:38 +08:00
    你可以了解下知云文献翻译
    kingba
        17
    kingba  
    OP
       2020-07-19 22:04:15 +08:00
    @Tianyan 赞,多谢!
    其实我设想的最佳方式也是这样,这样的交互更自然,因为交互在阅读器中,而且不需要修改源 PDF 。主要是自己能力有限不会客户端软件开发,回头会试用下知云
    kingba
        18
    kingba  
    OP
       2020-07-19 22:07:26 +08:00
    @Mindjet 对的,我就是受了彩云小译的启发想到搞这个的,已经买了 3 年会员。:)

    彩云的翻译 PDF 我试用过一两次,可能是我的文档排版稍复杂了点,最终输出的文字重叠比较严重,基本不可读,所以才想自己另搞一下。

    个人感觉 PDF 要想像网页那样严格的逐段对照是比较困难的,主要是 PDF 的版式复杂,所以才想退而求其次用逐页对照的方式。
    Mindjet
        19
    Mindjet  
       2020-07-20 07:03:59 +08:00
    @kingba #17 不建议建议用知云,这个软件相当难用,居然想自己做 PDF 阅读器,可想而知,做出来的东西烂到没法用。建议用 CopyTranslator,比知云强太多。知云比 CopyTranslator 唯一强的地方可能就是有人四处宣传,因为 CopyTranslator 是开源项目。
    Mindjet
        20
    Mindjet  
       2020-07-20 07:05:53 +08:00   ❤️ 1
    @kingba #17 可以用 WinAPI 将 CopyTranslator 直接放入 AppBar,用着太爽,今天可能会提交个 Pull Request,放到文档里面,CopyTranslator 是 Electron 开发的,我还在学习。现在是用其他脚本语言实现的,不过就是调用 WinAPI,效果差不了多少。
    biblade
        21
    biblade  
       2020-07-20 20:49:52 +08:00 via Android
    点赞,早就想要类似的东西了。
    haonie
        22
    haonie  
       2021-02-12 22:31:09 +08:00
    和我的需求一样,谢谢大佬开发的作品!!!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5574 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 06:36 · PVG 14:36 · LAX 23:36 · JFK 02:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.