我刚开始使用RoR并修改现有程序。使用Ruby 2.2.2p95,Rails 4.1.13.rc1和Prawn 2.0.1 文字在一个有界的框中。
pdf.column_box([0,pdf.cursor], :columns => 2, :width ==> pdf.bounds.width
person_text << "\n#{sprintf "%20d", count} #{'Grandchild'.pluralize(count)}"
如果count = 234,则输出为:
234 Grandchildren
如果count = 4238,则输出为:
4238 Grandchildren
没有空白填充来右对齐20空格字段中的数字。输出应如下所示:
234 Grandchildren
4238 Grandchildren
有什么问题? 如何编码?
答案 0 :(得分:0)
String类有两个名为ljust和rjust的方法可以帮助你
2.2.2 :010 > str=123
=> 123
2.2.2 :011 > "#{str.to_s.ljust(5)} Grandchildren"
=> "123 Grandchildren"
2.2.2 :012 > str=1234
=> 1234
2.2.2 :013 > "#{str.to_s.ljust(5)} Grandchildren"
=> "1234 Grandchildren"
2.2.2 :014 > "#{"123".to_s.ljust(5)} Grandchildren"
=> "123 Grandchildren"
2.2.2 :015 >
如果你正在做一个网页,你也可以通过CSS进行。
答案 1 :(得分:0)
由于Prawn的白色剥离,在第一个chr中放了一个。正。
> count = 4235
> srt = "#{sprintf("%20d", count)}"
> string = srt.gsub(/ (?= )/, Prawn::Text::NBSP)
> person_text << "\n#{string} #{'Child'.pluralize(count)}"
=> 4235 Children