Barby: Codigo de barras con el texto debajo


#1

Hola, me gustaria saber si generando codigos de barras con barby es
posible poner el texto que codifica el codigo de barras bajo dicho
codigo barras.

Gracias.


#2

2008/10/20 Xurde F. removed_email_address@domain.invalid

Hola, me gustaria saber si generando codigos de barras con barby es
posible poner el texto que codifica el codigo de barras bajo dicho
codigo barras.

Gracias.

Pues he tenido que buscar Barby en Google, porque no has puesto el
enlace,
pero del primer vistazo y viendo este snippet

require ‘barby’
require ‘barby/outputter/png_outputter’

barcode = Barby::Code128B.new(‘The noise of mankind has become too
much’)
File.open(‘code128b.png’){|f|
f.write barcode.to_png(:height => 20, :margin => 5)

}

Parece que se podría extender .to_png para incluir el texto ¿no?


#3

Manuel González Noriega wrote:

2008/10/20 Xurde F. removed_email_address@domain.invalid

Hola, me gustaria saber si generando codigos de barras con barby es
posible poner el texto que codifica el codigo de barras bajo dicho
codigo barras.

Gracias.

Pues he tenido que buscar Barby en Google, porque no has puesto el
enlace,
pero del primer vistazo y viendo este snippet

require ‘barby’
require ‘barby/outputter/png_outputter’

barcode = Barby::Code128B.new(‘The noise of mankind has become too
much’)
File.open(‘code128b.png’){|f|
f.write barcode.to_png(:height => 20, :margin => 5)

}

Parece que se podría extender .to_png para incluir el texto ¿no?

Gracias! Pense que no seria lo suficiente buen programador para tocar en
una gema! Por si alguien lo necesita la solucion es algo asi:
En el rmagick_outputter.rb añadimos a la funcion to_image antes del
return canvas lo siguiente:

    gc = Magick::Draw.new

gc.gravity = Magick::CenterGravity
gc.pointsize = 12
gc.font_family = “Helvetica”
gc.font_weight = Magick::BoldWeight
gc.stroke = ‘none’
gc.annotate(canvas, 0, 0, 0, 55, barcode.data)

Espero que os sirva. Un saludo.


#4

2008/10/21 Xurde F. removed_email_address@domain.invalid

gc.pointsize = 12
gc.font_family = “Helvetica”
gc.font_weight = Magick::BoldWeight
gc.stroke = ‘none’
gc.annotate(canvas, 0, 0, 0, 55, barcode.data)

Espero que os sirva. Un saludo.

Enhorabuena y gracias por compartir la solución :slight_smile: