optimize large files upload

pull/349/head 1.6.1
Pete Matsyburka 1 year ago
parent 009e05584a
commit 781ccc701d

@ -11,6 +11,7 @@ module Templates
MAX_WIDTH = 1400
MAX_NUMBER_OF_PAGES_PROCESSED = 15
MAX_FLATTEN_FILE_SIZE = 15.megabytes
GENERATE_PREVIEW_SIZE_LIMIT = 50.megabytes
module_function
@ -55,7 +56,9 @@ module Templates
attachment.save!
(0..[number_of_pages - 1, MAX_NUMBER_OF_PAGES_PROCESSED].min).each do |page_number|
max_pages_to_process = data.size < GENERATE_PREVIEW_SIZE_LIMIT ? MAX_NUMBER_OF_PAGES_PROCESSED : 1
(0..[number_of_pages - 1, max_pages_to_process].min).each do |page_number|
page = Vips::Image.new_from_buffer(data, '', dpi: DPI, page: page_number)
page = page.resize(MAX_WIDTH / page.width.to_f)

Loading…
Cancel
Save