【问题标题】:Ruby: gem Prawn: print wraps and goes upside downRuby:gem Prawn:打印包装并上下颠倒
【发布时间】:2013-05-14 19:08:56
【问题描述】:

我尝试了watermark existing pdf with ruby 中的示例,但是当我打印生成的文档时,“WATERMARK”被颠倒打印,几乎就像它到达纸的末端,折叠然后打印在背面(但是通过前面显示)。事实上,这是因为我用“pdf.text”添加了几行文本。

我还尝试使用 :page_size=>"LEGAL" 来调整新文档的页面大小,但这并没有改变任何东西。我也尝试了“LETTER”和“EXECUTIVE”,但这些也不起作用。

有没有办法让它在不折叠的情况下打印出来?

【问题讨论】:

    标签: ruby pdf prawn


    【解决方案1】:

    您尝试添加水印的 PDF 很可能已被旋转。

    您可以使用CombinePDF gem 来修复旋转并为现有 PDF 添加水印,如下所示:

    require 'combine_pdf'
    watermark = CombinePDF.load("watermark.pdf").pages[0]
    pdf = CombinePDF.load "content_file.pdf"
    pdf.pages.each {|page| page.fix_rotation << watermark}
    pdf.save "content_with_watermark.pdf"
    

    或者,您可以使用自己的文本添加水印:

    require 'combine_pdf'
    pdf = CombinePDF.load "content_file.pdf"
    pdf.pages.each {|page| page.fix_rotation.textbox 'watermark', opacity: 0.3}
    pdf.save "content_with_watermark.pdf"
    

    请注意,#fix_rotation 返回 self - 即页面对象 - 它允许我们像我在此演示代码中所做的那样链接方法。

    至于 PDF::Reader ...我不知道如何将“旋转:180”移动到实际页面的内容流中。但是如果你坚持使用 pdf_reader gem,你也许可以在it's documentation 中找到一些数据。

    祝你好运!

    附言

    据我所知,Prawn 放弃了它的模板支持...所以您引用的示例不应该适用于较新版本的 Prawn。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-31
    • 1970-01-01
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-16
    相关资源
    最近更新 更多