2012-04-24 25 views
6

Ejemplo Tengo una imagen.Rails/Ruby: ¿Qué gema puede crear una imagen con texto?

enter image description here

En mi ejemplo controlador de E tienen @name = "Jon"

Ahora quiero crear una nueva imagen que la imagen que tengo simplemente con el nombre de "Jon" en el centro de la imagen. Quiero poder especificar el tamaño de fuente, el color y la familia de fuentes que se deben usar y la posición del texto.

enter image description here

Qué joya es capaz de hacer eso?

+2

que voy a usar ImageMagick - Es sólo una dolor para instalar :( –

+0

Imagemagick a través de Rmagick es probablemente la (¿única?) manera de ir. Sí, instalarlo todo correctamente suele ser un dolor, pero c'est la vie. –

+0

Aquí está la misma pregunta con una respuesta de una plantilla: [http://stackoverflow.com/questions/1704670/ruby-rails-image-processing-libraries][1] [1]: http://stackoverflow.com/questions/1704670/ruby-rails-image-processing-libraries – makaroni4

Respuesta

8

Una solución básica de rmagick no es tan mala, 6 líneas. Lo siguiente le da un rectángulo amarillo con TEXTO en el centro. Puede experimentar con la fuente y el tamaño del punto. La llamada al centro está allí porque pensé que se veía mejor en el medio.

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') 

Tengo el requisito, también puede pasar. Esto debería ayudar.

+0

@lulalala He actualizado la solución echele un vistazo. – 123

+0

Parece que tratar de implementar este fragmento, con una instalación básica de imagemagick (vía brew) y rmagic gem en mac, provoca un error de fuente: 'no se puede leer la fuente (nulo)' – andrhamm

+0

brew install gs debería ayudar a resolver ese problema – breakdown1986

2

no puedo comentar pero en caso de que alguien más se está ejecutando en el mismo problema que @andrhamm [incapaz de leer la fuente (null)], instalar Ghostscript y vuelve a intentarlo

Cuestiones relacionadas