gem
barby, chunky_png(barbyを入れたら入ってる)
setting
https://github.com/toretore/barby/wiki/Outputters
- xdim: (default: 1)
 - ydim: (default: same as xdim)
 - height: (default: 100)
 - margin: (default: 10)
 
code
PNGにしてbase64でそのままHTMLに
  require 'barby'
  require 'barby/barcode/code_128'
  require 'barby/outputter/png_outputter'
  def barcode_output
    barcode_string = '12351515'
    barcode = Barby::Code128C.new(barcode_string)
    # css => false にして自分でcssを設定。自動で作られるcssには、"width:"が設定されないため表示されない。
    # PNG OUTPUT
    barcode.to_image(:height => 15, :margin => 5).to_data_url
  end
<img src="<%= "#{barcode_output}" %>">
SVGにしてHTMLに
モバイルなどでretinaの場合画質がよくない
  require 'barby'
  require 'barby/barcode/code_128'
  require 'barby/outputter/svg_outputter'
  def barcode_output
    barcode_string = '12351515'
    barcode = Barby::Code128C.new(barcode_string)
    # css => false にして自分でcssを設定。自動で作られるcssには、"width:"が設定されないため表示されない。
    # PNG OUTPUT
    Base64.encode64(barcode.to_svg(:height => 30, :width => 300))
  end
<img src="data:image/svg+xml;base64,<%= "#{barcode_output}" %>">