我想将扩展名为 doc/docx/xls/xlsx/pdf 的文件转换为 HTML 文件。有没有办法在 Solaris 上使用 Perl 以简单的方式做到这一点?
3 回答
我用于处理 Microsoft Office 文件的 perl 库非常缺乏,而且我还没有找到能够很好地处理 Office 2007 和 Office 2010 扩展的那些(如果你知道,请在评论中指出一个一!)
如果您有一台运行 Microsoft Office 的 PC,您可以使用 win32ole 从 unix 控制 Office 应用程序。我以前用 Ruby 做过: http ://rubyonwindows.blogspot.com/2007/03/automating-excel-with-ruby.html
这是使用 win32 OLE 的 perl 模块:http://metacpan.org/pod/Win32:: OLE
我个人不推荐 OLE 方法,因为它有很多令人头疼的问题(例如,您必须让 Office 在 PC 上运行才能使 unix 脚本正常工作,Windows 防火墙几乎会随机阻止 unix 脚本,因为您的 PC 会使用补丁进行更新) .
我还没有尝试过,但这里有一个 java 程序,它将使用 OpenOffice 和 GhostScript 为您进行批量转换:http: //www.codeproject.com/KB/java/PDFCM.aspx
作为旁注,有一个名为 xpdf 的实用程序可以将 pdf 文件转换为 text。这已经在 Solaris 上编译,尽管您必须从源代码编译(您可以从命令行调用该实用程序)。我用过它,它很棒。
更重要的是,它有一个修改版本,可以将 pdf 转换为 html。这个我还没有测试过,但它可能值得一试。