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}" %>">

関連情報

results matching ""

    No results matching ""