当用户将某些文件上传到我的网站(例如.doc,.xls,.pdf等)时,我希望能够生成预览缩略图(文档的第一页)。我正在使用LAMP堆栈中的PHP,但对任何可以完成这项工作的库或命令行工具都很满意(Linux非常受欢迎)。
答案 0 :(得分:9)
将某些文档格式转换为图像并不容易。 php本身不能做到这一点。 “正确”的方法是首先在您的服务器上安装程序,该程序可以以该格式打开文档。 例如,对于.doc文档,您可以使用OpenOffice 它还可以打开大多数其他文档格式 然后,您需要设置开放式办公室以“无头”模式工作,将输出发送到虚拟显示器(XVFB是您在Linux上需要的)
然后,您的php脚本将调用OpenOffice,将路径传递给上传的doc。 OpenOffice实际上会打开该文档。然后,您需要从屏幕缓冲区创建一个图像。你可以使用ImageMagick
然后,一旦捕获了屏幕,就可以将其调整为缩略图。
请查看此链接了解更多详情