轨道的简单文本到图像解决方案

时间:2010-07-27 12:10:30

标签: ruby-on-rails amazon-s3 heroku paperclip rmagick

在我开始使用Rmagick开始自己之前我会问,因为这可能是一个非常常见的用例。我有几百个电子邮件地址,我想为每个条目显示给用户但是我想避免将电子邮件显示为纯文本以避免刮擦,所以我正在寻找一些文本到图像的解决方案。

这很简单但当然我只想在每个条目生成一次图像,然后将图像存储在某个地方,我现在正在使用带有s3的回形针,因为我正在Heroku上托管等。

另一种可能性是要求用户填写验证码以获取电子邮件,但这似乎有点矫枉过正。

有什么建议吗?

由于

2 个答案:

答案 0 :(得分:2)

一个基本的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')

答案 1 :(得分:1)

可能值得研究一下比rmagick和ImageMagick重量更轻的libgd2(gd2 gem)。不确定他们是否在gem中实现了文本函数,但扩展调用其他libgd2函数并不困难。