Когда пользователи загружают определенные файлы на мой сайт (например, .doc, .xls, .pdf и т. Д.), Я хотел бы иметь возможность создавать предварительный миниатюру (на первой странице документа). Я работаю с PHP в стеке LAMP, но буду рад любой библиотеке или инструменту командной строки, который может выполнить эту работу (Linux очень предпочтителен).
Преобразование определенных форматов документов в изображение непросто. Только php не может этого сделать. «Правильный» способ сделать это – это, прежде всего, программа, установленная на вашем сервере, которая может открыть документ в этом формате. Например, для документов .doc вы можете использовать OpenOffice, он также может открывать большинство других форматов документов. Затем вам нужно настроить свой открытый офис для работы в режиме «безголовный», посылая вывод на виртуальный дисплей (XVFB – это то, что вам нужно на Linux)
Затем скрипт php вызывается OpenOffice, передавая путь к загруженному документу. OpenOffice фактически откроет этот документ. Затем вам нужно создать изображение из экранного буфера. Вы можете использовать ImageMagick для этого
Затем, как только у вас будет захват экрана, вы можете изменить его размер до миниатюры.
Посмотрите на эту ссылку для получения более подробной информации
Лучший способ состоит в том, чтобы все ваши документы были преобразованы в PDF, после чего вы можете сделать предварительный просмотр миниатюр
и вот как просто объясняется. Как преобразовать PDF-документ в изображение предварительного просмотра в PHP?