渲染ansi以HTML格式显示

时间:2014-08-07 15:22:00

标签: html ruby ruby-on-rails-3

我有一个程序可以将一系列数组渲染成ansi文本图像:

class RenderWorld
  def render_world_for_display(world)
    world.each do |y_axis_rooms|
      y_axis_rooms.each do |x_axis_rooms|
        x_axis_rooms.each do |room|
          print room
        end
      end
      puts
    end
  end

打印到控制台时效果很好:

enter image description here

但是当我尝试在HTML中以相同的模式显示字符时,一切都会混乱。

enter image description here

显然,我的功能不是改变文本本身,而是仅仅打印它,因此当我将它打印到HTML时,它只是未经处理的数组数据。我想我的下一步是修改我当前的函数以保存结果而不是打印它。如果保存,它可以传送到视图中并显示。

如何以这种方式保存文本,当它以HTML格式显示时,也不会显示任何Ruby数据类型的修复?

1 个答案:

答案 0 :(得分:1)

我现在明白了。我应该对自己更有信心。

我只需要创建一个变量而不是print,以连接到新变量。

class RenderWorld
  def render_world_for_display(world)
    map = ""
    world.each do |y_axis_rooms|
      y_axis_rooms.each do |x_axis_rooms|
        x_axis_rooms.each do |room|
          map += room
        end
      end
      map += "/\n"
    end
    return map
  end