我正在尝试通过 Ubuntu 上的命令行使用 LibreOffice 将 .xls
文件转换为 .pdf
。我有一份关于 .xls
文件的报告,在单元格等背景中有一些颜色。
问题是当我转换 .xls
文件时,.pdf
丢失了原始格式。每页几乎都被撕成两半,一页的内容显示在两个不同的页面中。
- 有人知道如何通过命令行将
.xls
文件转换为.pdf
并保持原始格式吗? - 或者一些技巧来设置
.pdf
页面的大小以不分页? (也可以通过命令行)
我用来进行转换的代码是:
soffice --headless --convert-to pdf:"impress_pdf_Export" filename.xls
最佳答案
如果您使用 LibreOffice 将 Microsoft Excel (XLS) 文件转换为 PDF 文档,这是一个两步过程(即使您的命令看起来确实是一个一步过程):
- 将 XLS 导入 LibreOffice(即使以
--headless
开始)。 - 从 LibreOffice 导出 PDF。
如果结果不像您预期的那样(与 Excel 的 native PDF 导出不够相似),则从上面的第一步开始调试:
在 GUI 中使用 LibreOffice 打开 XLS 文件。它看起来像您期望的样子吗?还是某些格式选项看起来很奇怪?
从那里导出 PDF(使用 GUI)。页面尺寸是否符合您的预期?你有没有按照你喜欢的方式设置它们?你想要的边距?等等。 ...
如果您在 Windows 上工作,您可能还需要考虑 OfficeToPDF.exe 强>。它托管在 CodePlex 上,获得 Apache 2.0 许可,并以二进制和源代码形式提供。
它需要有效的 Office 2013、Office 2010 或Office 2007 安装。但随后它可以命令行和批量转换为 PDF 各种基于 MS Office 的文件格式,包括 XLS(X)、PPT(X)、DOC(X)、VSD(X) 和 PUB 以及基于 Libre/OpenOffice 的文件格式ODT、ODS 和 ODC 文件。
关于excel - 通过命令行使用 LibreOffice 将 .xls 转换为 .pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25878987/