2012-04-24 45 views
6

示例我有一张图片。Rails/Ruby - 什么gem可以用文本创建图像?

enter image description here

在我的控制器我有例如@name = "Jon"

现在我想创建一个新的形象,我只是在图像中间的名字“乔恩”得到了图像。我希望能够指定应该使用的字体大小,颜色和字体系列以及文本的位置。

enter image description here

什么宝石都能够做到这一点?

+2

想我会使用ImageMagick的 - 这只是一个痛苦安装:( – 2012-04-24 18:07:34

+0

Imagemagick通过Rmagick可能是(唯一的?)的方式去。是正确安装它通常是一个痛苦,但c'est la vie。 – 2012-04-24 18:16:57

+0

以下是与一个模板的答案相同的问题: [http://stackoverflow.com/questions/1704670/ruby-rails-image-processing-libraries] [1] [1]:http://stackoverflow.com/questions/1704670/ruby-rails-image-processing-libraries – makaroni4 2012-04-24 18:33:55

回答

8

一个基本的rmagick解决方案没有那么差,6行。以下为您提供了一个黄色矩形,其中心为TEXT。您可以尝试使用字体和磅值。中央电话在那里,因为我认为它在中间看起来更好。

require 'RMagick' 

canvas = Magick::Image.new(300, 100){self.background_color = 'yellow'} 
gc = Magick::Draw.new 
gc.pointsize(50) 
gc.text(30,70, "TEXT".center(14)) 

gc.draw(canvas) 
canvas.write('tst.png') 

我得到的要求,你也可以通过。这应该有所帮助。

+0

@lulalala我已经更新了解决方案看看它。 – 123 2014-01-09 11:53:35

+0

看起来试图实现这个片段,通过基本安装imagemagick(通过brew)和mac上的rmagic gem,会导致字体错误:'无法读取字体(null)' – andrhamm 2014-07-17 19:10:47

+0

brew install gs应该可以帮助解决这个问题 – breakdown1986 2017-01-01 23:48:20

2

我不能发表评论,但万一别人运行到同样的问题@andrhamm [无法阅读的字体(空),安装Ghostscript的,然后再试一次

相关问题