将文本包装到字边界处的行中

1)我想通过单词自动换行文本,这样每行不超过56个字符。 有没有这样做的方法,还是我需要自己滚动?

@comment_text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." 

我的看法:

  

会呈现:

 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. 

2)我想将文本缩进4个空格,以便:

  56, :indent => 4} ) %> 

会呈现:

  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. 

我相信你正在寻找的function是word_wrap 。 像这样的东西应该工作:

 <%= word_wrap @comment_text, :line_width => 56 %> 

你可以将它与gsub结合起来得到你想要的缩进:

 <%= word_wrap(@comment_text, :line_width => 52).gsub("\n", "\n ") %> 

但您应该将其转换为辅助方法以保持视图清洁。

也许word_wrap助手可以帮助你。

要缩进文本,您可以使用换行符+ 4空格替换\n (换行符)。