skip pdf reader errors
This commit is contained in:
@@ -17,6 +17,8 @@ module Templates
|
|||||||
build_external_link_hash(page, annot).merge('page' => index)
|
build_external_link_hash(page, annot).merge('page' => index)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
rescue PDF::Reader::MalformedPDFError
|
||||||
|
[]
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_external_link_hash(page, annot)
|
def build_external_link_hash(page, annot)
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ module Templates
|
|||||||
|
|
||||||
def generate_pdf_preview_images(attachment, data)
|
def generate_pdf_preview_images(attachment, data)
|
||||||
ActiveStorage::Attachment.where(name: ATTACHMENT_NAME, record: attachment).destroy_all
|
ActiveStorage::Attachment.where(name: ATTACHMENT_NAME, record: attachment).destroy_all
|
||||||
number_of_pages = PDF::Reader.new(StringIO.new(data)).pages.size - 1
|
number_of_pages = HexaPDF::Document.new(io: StringIO.new(data)).pages.size - 1
|
||||||
|
|
||||||
(0..number_of_pages).each do |page_number|
|
(0..number_of_pages).each do |page_number|
|
||||||
page = Vips::Image.new_from_buffer(data, '', dpi: DPI, page: page_number)
|
page = Vips::Image.new_from_buffer(data, '', dpi: DPI, page: page_number)
|
||||||
|
|||||||
Reference in New Issue
Block a user