Я хотел бы взять PDF и преобразовать его в изображения... каждая страница PDF, становящаяся отдельным изображением.
Здесь существует подобное сообщение: Преобразуйте .doc или .pdf к изображению и отобразите миниатюру в Ruby? Но это не покрывает, как сделать отдельные изображения для каждой страницы.
ImageMagick может делать это с файлами PDF. Предположительно RMagick тоже может это сделать, но я с ним не знаком.
РЕДАКТИРОВАТЬ:
Код из сообщения, на которое вы ссылаетесь:
require 'RMagick'
pdf = Magick::ImageList.new("doc.pdf")
pdf
- это объект ImageList
, который согласно документации делегирует многие из своих методы в Массив
. Вы должны иметь возможность перебирать pdf
и вызывать write
для записи отдельных изображений в файлы.
Поскольку я не могу найти способ работы с PDF на постраничной основе в RMagick, я бы рекомендовал сначала разделить PDF на страницы с помощью команды pdftk's burst
, а затем работать с отдельными страницами в RMagick. Возможно, это менее производительно, чем решение "все в одном", но, к сожалению, универсального решения не существует.
Существует также PDF::Toolkit для Ruby, который подключается к pdftk, но я его никогда не использовал.