2012-07-22 4 views
6

Qualcuno sa come caricare un pdf multipagina con Paperclip e convertire ogni pagina in un Jpeg?Come caricare un PDF multipagina e convertirlo in JPEG con Paperclip?

Finora, ogni volta che caricare un file PDF, consente solo me per vedere la prima pagina del PDF in formato JPEG. Ma mi piacerebbe poter caricare e convertire ogni pagina dal PDF in un JPEG.

C'è qualche gemma o plug-in che può aiutarmi a caricare a 10 pg PDF e convertire/Conservare nel database come 10 file JPEG?

Ho guardato docsplit-images gioiello, ma non sono sicuro se questo è la soluzione migliore soluzione o come funziona.

Post.rb

class Post < ActiveRecord::Base 
    belongs_to :Blogs 

    attr_accessible :content, :title, :pdf 

    has_attached_file :pdf, 
        :url => "/assets/products/:id/:style/:basename.:extension", 
        :path => ":rails_root/public/assets/products/:id/:style/:basename.:extension" 

    validates_attachment_content_type :pdf, 
     :content_type => [ 'application/pdf' ], 
     :message => "only pdf files are allowed" 
end 

_form.html.erb

<%= form_for ([@post]), :html => { :multipart => true } do |f| %> 

    <%= f.file_field :pdf %> 

<% end %> 

show.html.erb

<%= image_tag @post.pdf.url(:original) %> 
+0

Quando si dice che consente solo di vedere la prima pagina, significa scaricare nuovamente il PDF dal server, giusto? Questo comportamento mi sorprenderebbe, poiché non penso affatto che Paperclip analizzi il PDF - copia semplicemente i dati binari sul tuo server - quindi sarebbe davvero strano per qualcuno aver analizzato il PDF e troncato in una pagina da qualche parte durante quel processo. – Matchu

+1

@Matchu fondamentalmente, posso vedere un'immagine della prima pagina del PDF nel browser. Desidero poter scorrere tutte e dieci le pagine. C'è un modo per fare questo. –

+0

Qual è l'url: porzione per? In che modo è diverso da: percorso? – Jwan622

risposta

6

Utilizzando un tag di immagine per questo non ha senso. Cambia il tuo image_tag in un link normale e sarai in grado di scaricare e visualizzare tutte le pagine.

<p> 
    <%= link_to 'My PDF', @post.pdf.url %> 
</p> 
+0

Mi piacerebbe essere in grado di scorrere attraverso ciascuna pagina pdf per mostrare in un formato galleria. Al momento del caricamento, è possibile convertire il PDF in più Jpeg in modo da poterli visualizzare in un formato di galleria. –

+1

@SurgePedroza questa domanda ha più di 2 anni, dovresti aprirne una nuova piuttosto che cambiarla se hai nuovi requisiti. Altrimenti è meno probabile che venga visto e risposto. –