我需要在ruby on rails应用程序中生成的pdf文件中嵌入一个链接,有没有办法用prawn来实现?阅读这一点,原来大虾格式是一段时间的答案,但0.7.x打破了这一点。prawn-format使用link_annotate(rect, options={})函数来创建链接。需要传入哪些选项才能让它在PDF中创建链接?
link_annotate(rect, options={})
编辑:
我希望看到一个这样做的代码示例,如果有人有一个。
bvjveswy1#
我知道这是一个老问题,但对于那些仍然在这个问题上绊倒的人来说,在当前版本的Prawn中,你可以使用这样的内联格式:
pdf.text 'Website: <color rgb="0000FF"><u><link href="http://www.stackoverflow.com">stackoverflow</link></u></color>', :inline_format => true
字符串
js81xvg62#
例如,如果您尝试创建一个指向外部页面(http://google.com)的链接,则可以使用以下命令放置一个大小为100x100的链接,该链接位于页面左下角5,5处,边框为1px:
pdf.link_annotation([100, 100, 5, 5], :Border => [0,0,1], :A => { :Type => :Action, :S => :URI, :URI => Prawn::LiteralString.new("http://google.com") } )
字符串对虾格式将解析传递给pdf.text方法的文本并找到html a标记,然后使用正则表达式解析出目标文本和链接文本,最后创建一个类似上面的带有边界框的链接(第一个参数)我不知道如果没有对虾格式,你怎么能做到这一点。但是,这就是你如何使用link_注解。“
9o685dep3#
另一种选择是使用prawn内置的低级注解支持:http://prawn.majesticseacreature.com/docs/prawn-core/classes/Prawn/Document/Annotations.html#M000158方法如下:link_annotation(rect,options={})创建链接注解的一种方便方法。rect必须是一个由四个数字组成的数组,描述注解的边界。选项hash应该包括:Dest(描述目标目的地,通常是记录在文档的Dests树中的字符串),或:A(描述单击链接时执行的操作),或:PA(描述链接到的URL)。
iibxawm44#
我最近这样做-工作很棒:
formatted_text_box([{:text=>"Google", :link=>"https://google.com", :color=>"0000ee"}])
4条答案
按热度按时间bvjveswy1#
我知道这是一个老问题,但对于那些仍然在这个问题上绊倒的人来说,在当前版本的Prawn中,你可以使用这样的内联格式:
字符串
js81xvg62#
例如,如果您尝试创建一个指向外部页面(http://google.com)的链接,则可以使用以下命令放置一个大小为100x100的链接,该链接位于页面左下角5,5处,边框为1px:
字符串
对虾格式将解析传递给pdf.text方法的文本并找到html a标记,然后使用正则表达式解析出目标文本和链接文本,最后创建一个类似上面的带有边界框的链接(第一个参数)我不知道如果没有对虾格式,你怎么能做到这一点。但是,这就是你如何使用link_注解。“
9o685dep3#
另一种选择是使用prawn内置的低级注解支持:http://prawn.majesticseacreature.com/docs/prawn-core/classes/Prawn/Document/Annotations.html#M000158
方法如下:
link_annotation(rect,options={})
创建链接注解的一种方便方法。rect必须是一个由四个数字组成的数组,描述注解的边界。选项hash应该包括:Dest(描述目标目的地,通常是记录在文档的Dests树中的字符串),或:A(描述单击链接时执行的操作),或:PA(描述链接到的URL)。
iibxawm44#
我最近这样做-工作很棒:
字符串