2012-07-22 56 views
6

Có ai biết cách tải lên bản pdf nhiều trang bằng Paperclip và chuyển đổi từng trang thành Jpeg không?Làm thế nào để tải lên một tệp PDF nhiều trang và chuyển đổi nó thành JPEG với Paperclip?

Cho đến giờ, mỗi lần tôi tải lên một tệp PDF, nó chỉ cho phép tôi xem trang đầu tiên của tệp PDF dưới dạng JPEG. Nhưng tôi muốn có thể tải lên và chuyển đổi mọi trang từ PDF sang định dạng JPEG.

Có bất kỳ gem hoặc plug-in nào có thể giúp tôi tải lên PDF 10-pg và Chuyển đổi/Lưu trữ trong Cơ sở dữ liệu dưới dạng 10 tệp JPEG không?

Tôi đã xem docsplit-images đá quý, nhưng tôi không chắc đó có phải là giải pháp tốt nhất hay giải pháp hoạt động hay không.

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

Khi bạn nói nó chỉ cho phép bạn xem trang đầu tiên, điều đó có nghĩa là tải xuống lại PDF từ máy chủ, phải không? Hành vi đó sẽ làm tôi ngạc nhiên, vì tôi không nghĩ Paperclip phân tích cú pháp PDF - nó chỉ sao chép trực tiếp dữ liệu nhị phân vào máy chủ của bạn - vì vậy thật là lạ khi ai đó đã phân tích cú pháp PDF và cắt ngắn nó thành một trang ở đâu đó trong quá trình đó. – Matchu

+1

@Matchu về cơ bản, tôi có thể thấy hình ảnh của trang đầu tiên của tệp PDF trong trình duyệt. Tôi muốn có thể cuộn qua tất cả mười trang. là có anyway để làm điều này. –

+0

Url: phần dành cho là gì? Làm thế nào là nó khác với: đường dẫn? – Jwan622

Trả lời

6

Sử dụng một thẻ hình ảnh cho điều này làm cho không có ý nghĩa. Thay đổi image_tag của bạn thành liên kết thông thường và bạn có thể tải xuống và xem tất cả các trang.

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

Tôi muốn có thể lặp qua từng trang pdf để hiển thị ở định dạng thư viện. Hoặc khi tải lên, có thể chuyển đổi PDF thành nhiều Jpeg để tôi có thể xem chúng ở định dạng thư viện. –

+1

@SurgePedroza câu hỏi này là hơn 2 tuổi, bạn nên mở một câu hỏi mới thay vì thay đổi nó nếu bạn có yêu cầu mới. Nếu không, nó ít có khả năng được nhìn thấy và trả lời. –

Các vấn đề liên quan