6

Существует ли (Linux) инструмент командной строки для извлечения всех изображений из документа MS Word (предпочтительно тот, который может обрабатывать формат .docx)?

2 ответа2

16

Поскольку файлы docx являются файлами zip, вы можете разархивировать файл docx, а затем выбрать файлы изображений.

У меня нет Microsoft Office для тестирования, поэтому я скачал несколько случайных файлов DOCX из Интернета. Кажется, что изображения всегда хранятся в каталоге word/media в архиве.

Эта команда извлечет все файлы из media каталога из архива:

unzip foo.docx "word/media/*"

Эта команда будет извлекать только файлы *.jpeg :

unzip foo.docx "*.jpeg"

Обратите внимание, что вы должны указать "*.jpg" если файлы сохраняются как jpg вместо jpeg . Я предполагаю, что также возможно, что изображения хранятся в другом формате. Я понятия не имею, могут ли изображения храниться в другом месте, кроме каталога word/media . Вы можете использовать unzip -l для просмотра содержимого архива.

0

Сохранение документа Word в виде веб-страницы - это метод, используемый в Windows для извлечения всех изображений в папку: http://support.microsoft.com/kb/555171

Это может быть долго, но, возможно, вы можете управлять Open Office на Linux из командной строки, чтобы извлечь изображения, возможно, преобразовав их в веб-страницу и в конечном итоге получив изображения в вспомогательной папке, которую он создаст.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .