我已阅读了有关Prawn的所有相关帖子,但未发现(即使在Prawn自己的文档中)页眉和页脚.
但是,我确实在Prawnto自己的网站上看到了有关页眉和页脚的演示.我复制了该演示的整个源代码,只是为了查看它是否有效但是未定义方法"header"的错误被抱怨了.我是否理解Prawn最近在宝石中取出了页眉和页脚或者我还需要先做其他什么才能使用页眉和页脚?
演示页面:http: //cracklabs.com/prawnto/code/prawn_demos/source/text/flowing_text_with_header_and_footer
关注代码的一部分:
Prawn::Document.generate("flow_with_headers_and_footers.pdf") do
header margin_box.top_left do
text "Here's My Fancy Header", :size => 25, :align => :center
end
text "hello world!"
end
Run Code Online (Sandbox Code Playgroud)
通过标题,以防万一,我的意思是通常出现在文档每个页面一角的单词片段.就像账单页面中的账号一样.
谢谢!
下面是我的Prawn PDF文件,用于在PDF上生成名称 -
def initialize(opportunity_application)
pdf = Prawn::Document.new(:page_size => [1536, 2048], :page_layout => :landscape)
cell_1 = pdf.make_cell(content: "Eylül Çamc?".force_encoding('iso-8859-1').encode('utf-8'), borders: [], size: 66, :text_color => "000000", padding: [0,0,0,700], font: "app/assets/fonts/opensans.ttf")
t = pdf.make_table [[cell_1]]
t.draw
pdf.render_file "tmp/mos_certificates/application_test.pdf"
end
Run Code Online (Sandbox Code Playgroud)
当呈现土耳其语名称EylülÇamcı时,我收到以下错误 -
Prawn::Errors::IncompatibleStringEncoding: Your document includes text that's not compatible with the Windows-1252 character set.
If you need full UTF-8 support, use TTF fonts instead of PDF's built-in fonts.
Run Code Online (Sandbox Code Playgroud)
我已经使用支持该名称中字符的TTF字体,我该怎么做才能正确打印名称?
我正在使用Prawn和Prawnto向用户显示基于PDF的报告,但在某些情况下,我还想将PDF保存为我的某个模型的附件.我正在使用Paperclip来处理我的所有附件.有没有人对如何做到这一点有任何建议?
谢谢!
我需要在rails应用程序的ruby中嵌入生成的pdf链接.对虾有没有办法做到这一点?
读到这一点后发现,大虾格式是一段时间的答案,但0.7.x打破了这一点.
prawn-format使用该link_annotate(rect, options={})函数创建链接.需要将哪些选项传递给它才能在PDF中创建链接?
编辑:
我想看看如果有人有一个代码示例.
我想添加一个动态生成的文本.有没有办法在Ruby中为现有PDF添加水印?
这是我到目前为止,但我需要设置边距:
def send_fax
contact = Contact.find_by_id(self.contact_id)
pdf = Prawn::Document.new
pdf.font "Times-Roman"
pdf.move_down(20)
pdf.text "ATTN: #{contact.first_name} #{contact.last_name}", :size => , :style => :bold
pdf.text "RE: #{self.subject}"
pdf.move_down(20)
pdf.text "#{self.body}"
OutboundMailer.deliver_fax_email(contact, self, pdf)
end
Run Code Online (Sandbox Code Playgroud) 我正在尝试了解Prawn pdf gem.
我能够生成一个pdf.gemfile中的每个gem都包括:
gem 'mysql', '~> 2.8.1'
gem 'prawn', '~> 0.12.0'
gem 'pdf-reader', '~> 0.10.0'
gem 'Ascii85', '~> 1.0.1'
Run Code Online (Sandbox Code Playgroud)
在config/application.rb中:
config.autoload_paths << "#{Rails.root}/app/reports"
Run Code Online (Sandbox Code Playgroud)
然后在控制器中:
require 'prawn'
def index
pdf = Prawn::Document.new
pdf.text "Hello World"
pdf.render_file "x.pdf"
end
Run Code Online (Sandbox Code Playgroud)
比我调用索引函数.在我的应用程序的根目录中创建了一个名为x.pdf的PDF.在gemfile中,rakefile和config.ru.
题:
我正在创建一本pdf书,我需要为每个页面添加背景图像.
页面尺寸为(576 x 576),背景图像尺寸为2700 x 2700(300 dpi.)(这些尺寸是要求,因此无法调整).我的问题是 - 背景图片在页面中显示不成比例.我怎样才能解决这个问题 ?这是我的代码:
Prawn::Document.generate("#{Rails.root.to_s}/public/#{filename}.pdf", :page_size => [576,576], :left_margin => 50,
:right_margin => 50, :page_layout => :portrait, :skip_page_creation => true, :skip_encoding => true,
:background => "#{Rails.root.to_s}/public/images/pdf/bg_blank_low.jpg" ) do |pdf|
....
....
....
)
Run Code Online (Sandbox Code Playgroud)
有没有其他方法可以将300 dpi的图像作为背景图像放置.
我甚至尝试添加pdf模板作为背景,但仍然没有运气.
任何建议或提示将不胜感激.
谢谢.
是否可以在Prawn中为bounding_box添加背景颜色?
bounding_box([100, cursor], width: 80, height: 20) do
pad_top(7) { text "THIS IS TEXT", size: 8, align: :center }
stroke_bounds
end
Run Code Online (Sandbox Code Playgroud)
我已经尝试将其添加到bounding_box块
background_color: "CCCCCC"
Run Code Online (Sandbox Code Playgroud)
我试过在块内添加这个
fill_color "CCCCCC"
background_color "CCCCCC"
Run Code Online (Sandbox Code Playgroud)
似乎没有什么东西适用于bounding_box
我正在使用Rails 4 + prawn_rails +最新版本的prawn(v 1.1.0),我在更新日志中注意到:https://github.com/prawnpdf/prawn/wiki/CHANGELOG表格现在是分开的.
我按照说明进行操作require "prawn/tables".我这样做是通过在我的lib目录中添加一个文件:
LIB/prawn.rb
require "prawn/tables"
Run Code Online (Sandbox Code Playgroud)
我重新启动了我的rails服务器,但仍然收到错误:
NoMethodError - undefined method `table' for #<Prawn::Document:0x007fda2d594a98>:
Run Code Online (Sandbox Code Playgroud)
我该如何解决?