以下为一个自动 PPT 翻译脚本的相关信息:
目前只设置了文本翻译,因为表格元素需求不大,没有对图表做处理,所以这里排除了所有shape,如果要加入表格翻译的话,可以定义shape = table来定义表格,然后翻译表格里的cell实现。接收路径我已经调过了,如果用其他的API,要在translated_text = get_result后面替换成自己的地址然后是语言的选择,我的原文件是中文,用'cn'表示,如果是英文的文档改成‘en’,其他语种对应代码贴出来就可以直接跑了,也还有优化空间,大家可以diy一下,比如“100w"“官微”这种比较本土的说法,翻译还识别不出来。关于文档里面有些文字没有翻译,主要是因为被group了,然后对应的形状被识别成了单一的图形。一个办法是在翻译之前批量处理一下,全选所有元素ungroup,还有一种方式把PPT拆解为xml(这个有点复杂,之后我会再试一试)。python目前没有ungroup的功能。适合那些有特别多碎块的PPT,保留字体和格式(不过全角和半角需要手动改一下,还需要根据实际翻译的长度调整下字号)。算是个半成品吧,不过实测下来,也差不多能节省小朋友80%以上的工作量。
因为翻译需要外接API,这里根据自己的API资源提前设置下,推荐讯飞大模型,新账户免费送200万tokens,有效期3个月,很良心~https://xinghuo.xfyun.cn/首页进去选择API接入,然后点服务管理进入控制台创建一个新项目,比如“PPT翻译”,这样你的API只会被这个项目ID调用,避免泄露点进去,找到左边机器翻译的模型按提示来,领一个200万tokens的礼包然后就可以在主控台看到对应的id,apikey,api secret和接入路径了
这个故事起源于,我有一个客户,有一天global的老大来开会,喊了微博的销售,会后老外想要一个案例分析,微博也答应了。但是TMD过了一个礼拜,他们给了个中文的案例,说没人翻译...就只好让同事用gpt去翻,但是发现这个PPT碎的令人发指,小朋友翻译翻的绝望了,就想办法写了个自动翻译的脚本。目前测下来整体还可以,虽然性能还不够好(比如有些翻译不是很全,有些本土化的梗无法理解),但整体的效率已经提升很多了。(版本还会有些小更新,改了个名字好找一点~)脚本在Python环境下运行,整体逻辑不复杂,分成几个步骤(如果有大佬有兴趣拆成xml来搞,欢迎交流)