【发布时间】:2015-05-26 05:39:26
【问题描述】:
在 Rails 3 中使用 wicked_pdf gem 将 HTML 文件转换为 PDF 时出现以下错误。
错误:
Error: Failed to execute:
["C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe", "file://C:/DOCUME~1/SUBHRA~1/LOCALS~1/Temp/wicked_pdf20150526-648-17uza61.html", "C:/DOCUME~1/SUBHRA~1/LOCALS~1/Temp/wicked_pdf_generated_file20150526-648-w6l9ye.pdf"]
Error: PDF could not be generated!
Command Error: Loading pages (1/6)
[> ] 0%
[======> ] 10%
Error: Failed loading page file://c/DOCUME~1/SUBHRA~1/LOCALS~1/Temp/wicked_pdf20150526-648-17uza61.html (sometimes it will work just to ignore this error with --load-error-handling ignore)
Exit with code 1 due to network error: ContentNotFoundError
请检查我下面的代码。
用户/index.html.erb:
<p>
<%= link_to "Download pdf",download_pdf_path(:format => 'pdf') %>
</p>
用户/download_pdf.pdf.erb:
<h1>Hello pdf</h1>
控制器/users_controller.rb:
class UsersController < ApplicationController
def index
end
def download_pdf
respond_to do |format|
format.pdf{ render pdf: "/users/download_pdf.pdf.erb"}
end
end
end
wicked_pdf.rb:
WickedPdf.config = {
#:wkhtmltopdf => '/usr/local/bin/wkhtmltopdf',
#:layout => "pdf.html",
:exe_path => 'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
#:exe_path => Rails.root.join('bin', 'wkhtmltopdf').to_s
}
宝石文件:
source 'https://rubygems.org'
gem 'rails', '3.2.19'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'sqlite3'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# To use Jbuilder templates for JSON
# gem 'jbuilder'
# Use unicorn as the app server
# gem 'unicorn'
# Deploy with Capistrano
# gem 'capistrano'
# To use debugger
# gem 'debugger'
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary'
我通过从其站点下载安装wkhtmltopdf 并在 wicked_pdf.rb 文件中设置路径。但是我遇到了这种类型的错误。我使用的是 Rails 版本 3.2.19 和 win-xp。请帮我解决这个问题。
【问题讨论】:
-
尝试在 Rails 控制台中运行“WickedPdf.new”。
-
@ user123 : 它给出了这个结果 #<0x309a668 files opdf.exe ::>0x309a668>
标签: ruby pdf ruby-on-rails-3.2 wicked-pdf