【问题标题】:PHP Converting Excel (.xls) to pdfs [closed]PHP将Excel(.xls)转换为pdf [关闭]
【发布时间】:2010-11-16 13:11:21
【问题描述】:

是否有任何 php/java/开源软件转换器或 php 库可以将 xls 文件转换为 pdf 文档?

Rundown:有预先存在的代码生成 xls 电子表格(大约 2002-2006 年,我相信是预打开的 xml 版本),出于各种原因需要将它们转换为 pdf。

到处搜索,包括这里。我想我只需要朝着正确的方向前进,我确信已经有一些东西可以做到这一点。

【问题讨论】:

  • 您是否考虑过重构代码以直接生成 PDF。而不是生成 Excel 电子表格然后尝试转换?
  • stackoverflow.com/questions/265760/generating-pdfs-with-php 提供了使用 PHP 生成 PDF 的解决方案
  • @MadMurf,这就是我不希望做的事情——涉及到很多预先存在的代码。这将是我所希望的。然而,大多数时候重构是不可能的。
  • Fair nuff @jim,我完全理解重构并不总是可用的,这就是我发表评论而不是答案的原因。维护现有代码库的乐趣。探索@Speher 的解决方案时要注意的一点是使用OpenOffice 打开/处理.XLS 并输出到.pdf 的性能。如果它在用户工作站上一次做一个,不用担心,但是如果它要处理来自多个来源的请求,您可能会发现性能和锁定问题。几年前在这种情况下使用 MS Office 玩得很开心。
  • 我们所有的 Excel 报告创建都是一次性的,每天最多运行一次,所以不会有任何问题,至少不会很长时间。可能会有一些自动报告,但更糟糕的是,我可以 cron 编辑以间隔 1 分钟运行它们。

标签: php excel pdf


【解决方案1】:

由于 PHP 能够在 linux 中通过 shell 执行命令,this 可能是一个好的开始。

【讨论】:

  • 正是我所希望的。谢谢,我测试后会报告!
  • 安装时遇到了一些网络问题.. 然后我还有其他一些事情要做,明天看看情况如何!我想我也必须弄清楚配置并手动编辑它们。
【解决方案2】:

您可以通过安装 OpenOffice 在 Linux 上将 XLS 文件转换为 PDF 使用 PDF 编写器作为默认打印机驱动程序。

然后,您可以使用“-p”命令行调用 OpenOffice(来自 PHP) 参数,这将导致它加载指定的文件并打印它。

例如,如果您的文件是“accounts.xls”,您可以调用 以下命令:

soffice -p account.xls

OpenOffice 会加载“accounts.xls”文件并将其“打印”到 PDF writer,将被配置为将 PDF 文档保存到 所需的文件名。

GhostScript 是一款合适的 PDF 编写器。

OpenOffice 安装指南介绍了如何安装和配置 使用“spadmin”实用程序的打印机驱动程序,并讨论了 ghostscript 作为 PDF 编写器: 《Open Office 设置指南 - 附录》 http://www.openoffice.org/docs/setup_guide/appendix.html

您可以使用反引号执行从 PHP 调用 OpenOffice 运算符或“exec”函数。您可能还需要使用 PHP 来移动 和/或重命名生成的 PDF 文件:

PHP:程序执行函数 http://www.php.net/manual/en/ref.exec.php

PHP:文件系统:重命名 http://www.php.net/manual/en/function.rename.php

OpenOffice 非常擅长处理 XLS 文件,但它可能不会 完美呈现每一个这样的文件 - 所以如果你需要终极 兼容性 您必须在 Windows 上使用 Microsoft Excel 平台或模拟器。 “IT AsiaOne”研究了几种替代方案 Microsoft Office(包括 OpenOffice)并写道“虽然没有 替代套件承诺...与 Microsoft 完全兼容 办公室创建的文档,一般来说,他们做得不错 翻译微软“.doc”、“.ppt”和“.xls”文件格式”:

IT AsiaOne - 特价商品 - 供您挑选 http://it.asia1.com.sg/specials/mmedia20020724_001.html

其他链接:

OpenOffice.org 主页 http://www.openoffice.org/

Ghostscript 主页 http://www.cs.wisc.edu/~ghost/

PHP 主页 http://www.php.net/

谷歌搜索策略:

openoffice 脚本 pdf linux ://www.google.com/search?q=openoffice%20scripting%20pdf%20linux

openoffice 打印“命令行” ://www.google.com/search?q=openoffice%20scripting%20pdf%20linux

然后从 openoffice.org 主页。

参考:http://answers.google.com/answers/threadview/id/177241.html

【讨论】:

    猜你喜欢
    • 2012-11-30
    • 2015-08-02
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-25
    • 2010-10-14
    相关资源
    最近更新 更多