У меня есть процессор Dragonfly, который должен взять данный PDF-файл и вернуть PNG первой страницы документа.
Когда я запускаю этот процессор через консоль, я получаю PNG, как и ожидалось, однако, когда в контексте Rails я получаю его в формате PDF.
Мой код примерно такой:
def to_pdf_thumbnail(temp_object)
tempfile = new_tempfile('png')
args = "'#{temp_object.path}[0]' '#{tempfile.path}'"
full_command = "convert #{args}"
result = `#{full_command}`
tempfile
end
def new_tempfile(ext=nil)
tempfile = ext ? Tempfile.new(['dragonfly', ".#{ext}"]) : Tempfile.new('dragonfly')
tempfile.binmode
tempfile.close
tempfile
end
Теперь tempfile определенно создает файл .png, но конвертирование генерирует PDF (при запуске из Rails 3).
Любые идеи относительно того, что проблема может быть здесь? Что-то смущает тип контента?
Я должен добавить, что и это, и стандартное преобразование (asset.png.url
) дают PDF с содержимым PDF в виде небольшого блока в середине изображения (A4).