ruby-on-rails - 使用 Prawn 生成的 PDF 中右侧缩进的文本

标签 ruby-on-rails ruby-on-rails-3 pdf-generation prawn prawnto

我正在使用 Prawn在我的 Rails 应用程序中呈现 PDF。

但是,出于某种原因,我的电话号码总是在右侧缩进 2 (?) 个空格。

谁能告诉我我在这里缺少什么?所有三个值都保存为我的 SQLite 数据库中的字符串,并且没有我知道的空白字符。

电子邮件和URL值总是整齐地排列在右边。

  def show_sender_details
    text "#{p.telephone}\n#{p.email}\n#{p.url}", :align => :right 
  end

有人可以帮忙吗?

最佳答案

电话号码总是在右侧缩进,因为在 text 中使用方法:align => :right ,因此所有文本字符串都向右对齐。

您可以尝试使用 text_box方法与左对齐并通过定义其左上角从页面的顶部和右侧边缘的缩进(bounds.right 和 bounds.top 值)手动将这个框放在页面上。像这样(完整的工作示例):

需要“Prawn ”
需要'ostruct'

p = OpenStruct.new(
:电话 => "+1-201-555-2233",
:email => "test@example.com",
:url => "http://example.com")

Prawn::Document.generate('simple_text.pdf', :skip_page_creation => true) 做
开始新页面
text_box("#{p.telephone}\n#{p.email}\n#{p.url}",
:at => [bounds.right - 100, bounds.top - 100],
:align => :left,
:高度 => 50,
:width => margin_box.width)
结尾

关于ruby-on-rails - 使用 Prawn 生成的 PDF 中右侧缩进的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16903112/

相关文章:

ruby-on-rails - actionview::template::error(nil:NilClass 的未定义方法 'html_safe')

ruby-on-rails - 如何在 Rails 中创建分层永久链接/路由?

ruby-on-rails - 使用&调用和接收参数的区别

ruby-on-rails - Elasticsearch 和 Tire Gem : "IndexMissingException[[products] missing]"?

php mpdf内存限制错误

ruby-on-rails - Rails 4 扩展了构建方法

ruby-on-rails - 如何在我的 Gemfile 中指定本地 gem?

ruby-on-rails - 在 after_save 回调中使用 `self` 对象时出错

pdf - 如何将两个 PDF 页面显示在同一页面上?

php - 如何从 Web 委派长时间的后台任务,并在完成后恢复控制