|
|
|
@@ -1,10 +1,6 @@ |
|
|
|
class ContentGenerationJob < ApplicationJob |
|
|
|
require 'docsplit' |
|
|
|
|
|
|
|
@document_id = nil |
|
|
|
@document = nil |
|
|
|
@content = nil |
|
|
|
|
|
|
|
queue_as :default |
|
|
|
|
|
|
|
# after_perform :generate_tags |
|
|
|
@@ -40,17 +36,16 @@ class ContentGenerationJob < ApplicationJob |
|
|
|
file_basename = File.basename(@document.doc.path, '.pdf') |
|
|
|
folder_path = 'tmp/raw_content/' + file_basename |
|
|
|
Docsplit.extract_images(@document.doc.path, output: folder_path, size: '200x', format: :png) |
|
|
|
@content.pagecount.times do |page| |
|
|
|
i = page + 1 |
|
|
|
1.upto(@content.pagecount) do |page| |
|
|
|
file_name = folder_path + '/' + File.basename(@document.doc.path, '.pdf') + '_' + page.to_s + '.png' |
|
|
|
page_preview = @content.page_previews.build |
|
|
|
puts 'build fine' |
|
|
|
file = File.open(folder_path + '/' + File.basename(@document.doc.path, '.pdf') + '_' + i.to_s + '.png', 'rb') |
|
|
|
puts 'opened fine' |
|
|
|
file = File.open(file_name, 'rb') |
|
|
|
page_preview.preview = file |
|
|
|
page_preview.pagenumber = i |
|
|
|
page_preview.pagenumber = page |
|
|
|
file.close |
|
|
|
page_preview.save |
|
|
|
end |
|
|
|
FileUtils.rm_rf(folder_path) |
|
|
|
end |
|
|
|
|
|
|
|
def generate_tags |
|
|
|
|