Tag: prawn

不能写出未知属性`info’PrawnPDF

我正在使用Prawn PDF动态生成发票PDF并且我不断收到错误“无法写入未知属性’信息’”但我在任何相关数据库表中都没有任何属性’info’ (或者我的整个数据库)。 我不知道gem中是否有我缺少的东西。 这是我正在关注的教程: http : //www.idyllic-software.com/blog/creating-pdf-using-prawn-in-ruby-on-rails/和http://www.sitepoint.com/ PDF生成-导轨/ 我确实在初始化程序中注册了mime类型(没有显示bc它是如此简单,但我可以,如果需要的话) 我还多次重启服务器以确保不是问题。 我知道gem正确安装,因为我可以生成一个空的PDF没有问题,但当我尝试添加@invoice时,我遇到了问题。 发票显示控制器操作: def show @invoice = Invoice.find(params[:id]) @customer = @invoice.customer @user = current_user @company = @user.company respond_to do |format| format.html format.pdf do pdf = InvoicePdf.new(@invoice) send_data pdf.render, filename: “invoice_#{@invoice.created_at.strftime(“%m/%d/%Y”)}.pdf”, type: “application/pdf” end end end InvoicePdf.rb class InvoicePdf 270, :height => 300) do text “Lorem […]

Prawn + Prawnto问题

我知道大虾正在工作,因为我有一个show动作,如果我添加.pdf到它的末尾加载show.pdf.prawn。 但是,我有一个表格: “/holders”, :action=> “generate”, format: “pdf”) do %> 这会将count提交给generate动作。 在我的生成动作中,我有以下内容: def generate prawnto :filename => “print.pdf” respond_to do |format| format.html format.pdf { render :layout => false} end end 和我的generate.pdf.prawn看起来像: pdf.text “HELLO WORLD” 当我提交表单时,我得到了URL: http://localhost:3000/generate.pdf ,Chrome告诉我Failed to load PDF document而没有其他错误或信息。 我注意到我得到了:在我的开发日志中Rendered holders/generate.pdf.erb ,表明它甚至没有找到.prawn文件。 我究竟做错了什么?

如何用虾生成目录?

是否有一种简单的方法来生成目录,其中包含指向相应页面的链接?

如何更改Prawn中的字体

我正在尝试做的是使用Prawn生成PDF,同时具有一些特定于语言的字符。 结果我收到以下错误: raise Prawn::Errors::IncompatibleStringEncoding, “Your document includes text that’s not compatible with the Windows-1252 character set.\n” \ “If you need full UTF-8 support, use TTF fonts instead of PDF’s built-in fonts\n.” 所以我尝试通过这样做来改变字体: # app/models/prawn/change_font_decorator.rb Prawn::Document.generate(“output.pdf”) do font_families.update(“Arial” => { :normal => Rails.root.join(“app/assets/fonts/OpenSans-Regular.ttf”), :italic => Rails.root.join(“app/assets/fonts/OpenSans-Regular.ttf”), :bold => Rails.root.join(“app/assets/fonts/OpenSans-Regular.ttf”), :bold_italic => Rails.root.join(“app/assets/fonts/OpenSans-Regular.ttf”) }) font “Arial” end […]

我可以在Rails中使用prawn的pdf生成中使用highcharts吗?

在我的rails应用程序中,我使用highcharts来显示一些图表。 而现在,我需要生成带图表的pdf(我将使用虾)。 我想知道我是否可以在pdf中使用highcharts。 也许与ExecJS? 或者替代虾? 谢谢!

为整个Prawn PDF文档设置动态高度

当我尝试使用Prawn gem for Rails生成文档时,我遇到了问题 我要做的是为我的pdf设置一个可变高度,因此根据数据库中的一些查询,PDF高度将会改变。 我这样做是因为我需要单页PDF文档。 目前,我的代码如下所示: pdf = Prawn::Document.new(page_size: [297.64, 419.53], margin: 0) …. data = [ [“Header1”, “Header2”, “Header3”, “Header4”, “Header5”, “Header6”] ] // here is the variable data cart.cart_products.each do |cp| arr = [ cp.product_code, cp.product_description, cp.amount, cp.product_metric, cp.product_unit_value, cp.total_value ] data.push(arr) end // populating the table with data pdf.table(data, :cell_style => […]

在resque中使用prawn在后台生成pdf

我正在尝试通过Resque后台作业在后台创建PDF文档。 我创建PDF的代码是在Rails帮助器方法中,我想在Resque工作器中使用,如: class DocumentCreator @queue = :document_creator_queue require “prawn” def self.perform(id) @doc = Document.find(id) Prawn::Document.generate(‘test.pdf’) do |pdf| include ActionView::Helpers::DocumentHelper create_pdf(pdf) end end end create_pdf方法来自DocumentHelper但我收到此错误: undefined method `create_pdf’ 有人知道怎么做吗?

使用Base64中的图像生成带有图像的PDF

我想在一个pdf中保存多个png。 我从API调用收到的PNG到Endicia Label Server,它给我一个Base64编码图像作为响应。 基于这个问题: 如何在不保存Rails服务器的情况下使用Prawn将base64字符串转换为PNG def batch_order_labels @orders = Spree::Order.ready_to_ship.limit(1) dt = Date.current.strftime(“%d %b %Y “) title = “Labels – #{dt} – #{@orders.count} Orders” Prawn::Document.generate(“#{title}.pdf”) do |pdf| @orders.each do |order| label = order.generate_label if order.international? @image = label.response_body.scan(/([^]*)/imu).flatten.last else @image = label.image end file = Tempfile.new(‘labelimg’, :encoding => ‘utf-8’) file.write Base64.decode64(@image) file.close pdf.image file […]

使用prawnto_2 gem加载图像时,RAILS_ROOT不再有效

我正在将我的应用程序从Rails 3.0升级到Rails 3.1。 在可能的情况下,我已经将我的旧插件分类为有利于gem,包括用这个漂亮的新prawnto_2gem替换旧的prawnto插件。 大多数事情似乎很好,但我不能像以前一样加载图像。 我的PDF视图中的代码是 pdf.image open(“#{RAILS_ROOT}/public/images/logo.png”) 但是我收到以下错误 uninitialized constant ActionView::CompiledTemplates::RAILS_ROOT 我意识到图像文件的位置会随着我使用资源而改变,并且图像不再存储在公共文件夹中。

生成pdf的任何字体都可以处理中文,西里尔文…?

我正在使用Prawn gem在Ruby on Rails中创建pdf文档的生成器,我想到了当我有中文,日文和西里尔文字符时它们显示不正确的问题。 我用Google搜索,因为“当我生成字体时,我需要指定,pdf文本应该用什么字体呈现” 。 现在这不是问题,而是我的文档将包括gTLD支持的所有可能的字符。 问题1: 你知道生成pdf文件的任何字体,包括尽可能多的字符(亚洲,欧洲,符号……)? 理想情况下,gTLD支持的所有字符。 我知道Prawn默认包含gkai00mp.ttf,但它专注于中文字符,我正在寻找允许将它们全部包含在内(就像PokeMon一样,它们能够抓住它们;我知道我要求的太多但仍然…… 。) 另一个问题是当客户打开此文档时: 问题2 是否由Prawn生成的pdf包括我在pdf文件中的字体,所以当其他计算机打开它时,字体会出现? 这是默认标准吗? 或者我需要确保/强制执行此function?