使命
TL;DR 或:中止任务
我最近接到了一项新任务,该任务大量使用 AWS 来实现无服务器架构等。我的第一个任务的目标是在文档上传到 S3 存储桶时触发 Lambda ,并将不同格式的文件转换为.pdf
s. 预计支持的格式包括.doc
和.docx
. 虽然我知道这些文件包含在文档编辑期间使用的元数据,但我认为我可以只抓取文档,直到找到 ascii 字符。直到我强迫 VS Code 打开原始文件: 恐怖。显然,我正忙得不可开交。
勘探
所以我认为我们都同意编写代码来解决问题应该是最后的手段,所以首先我想知道我是否可以利用(希望是免费的)服务来完成繁重的工作。
谷歌文档怎么样?
我考虑使用 Google Docs 作为转换的主力,但一位在该项目中工作时间较长的同事告诉我,Google Docs 总是删除某些格式元素,通常是像 open paren 这样的符号。来自业务的要求是文档格式被完全保留,所以我不能冒一个不完整的解决方案的风险。
好的,那还有什么?
事实证明,将 word 文档转换为 pdf 的流行策略是使用LibreOffice 的 CLI 功能。事实上,已经有一个基于 JS 的库可以做到这一点!
哦!那么为什么不使用 Javascript 而不是 Python 呢?
因为我喜欢使用 Python 并且想要挑战?忘记我之前所说的避免编写代码。
那好吧。