From 6c0a0709817b6079e44b54929bcd05718acf4cf8 Mon Sep 17 00:00:00 2001 From: SylorHuang Date: Thu, 15 Aug 2019 10:46:14 +0800 Subject: [PATCH] =?UTF-8?q?pdf=E5=9C=A8=E7=BA=BF=E6=B5=8B=E8=AF=953?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/exercises_controller.rb | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) 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