diff --git a/app/controllers/exercises_controller.rb b/app/controllers/exercises_controller.rb index 9dc85b580..811ec6e99 100644 --- a/app/controllers/exercises_controller.rb +++ b/app/controllers/exercises_controller.rb @@ -1290,12 +1290,18 @@ class ExercisesController < ApplicationController if params[:export].present? && params[:export] normal_status(0,"正在下载中") else - respond_to do |format| - set_export_cookies - format.pdf do - render pdf: 'exercise_export/blank_exercise', filename: filename_, stylesheets: stylesheets, disposition: 'inline', type:"pdf_attachment.content_type",stream:false - end - end + file = File.open(Rails.root.join('exercise_export/blank_exercise')) + html = ERB.new(file.read).result(prepare_binding) + + kit = PDFKit.new(html) + base_css = %w(app/templates/exercise_export/exercise_export.css) + base_css.each { |css| kit.stylesheets << Rails.root.join(css) } + file = Tempfile.new(filename_) + kit.to_pdf(file.path) + file + + send_file file,disposition: 'inline', type:"pdf_attachment.content_type",stream:false + # set_export_cookies # render pdf: 'exercise_export/blank_exercise', filename: filename_, stylesheets: stylesheets, disposition: 'inline', type:"pdf_attachment.content_type",stream:false end