私はバーコードが好きだ。それも、JAN-13/EAN-13形式限定で。理由はいくつかあるが、4種の太さのバーを4種の間隔に置くと13桁の数字を表現でき、それが世界中の企業や製品名とリンクしている、という情報量の少なさに比べたときの表現力の大きさに尽きる。バーの太さが重要な情報となるため、高い印刷精度...
私はバーコードが好きだ。それも、JAN-13/EAN-13形式限定で。理由はいくつかあるが、4種の太さのバーを4種の間隔に置くと13桁の数字を表現でき、それが世界中の企業や製品名とリンクしている、という情報量の少なさに比べたときの表現力の大きさに尽きる。バーの太さが重要な情報となるため、高い印刷精度と読取り精度が要求されるが、カメラを内蔵した携帯電話の普及やCCDの性能向上もあり、その活用範囲は拡がっている。
JAN-13/EAN-13の場合、最初の2桁は国コード(日本の場合49または45)、次の5桁(2001年以降は7桁)は商品メーカーコード、次の5桁(2001年以降は3桁)がメーカーが独自に決める商品アイテムコード、最後の1桁は読み取りが正しいかどうか判定するための情報(チェックデジット)とされている。
このJAN-13/EAN-13バーコードは、当コラムでいうところの「マッシュアップ」に使える素材だと考えている。そして最近、にわかにその必要性にかられているのだ。
というのも、CDの耐久性が気になり始めたから。一説にCDの寿命は数十年と言われるが、仮に30年が目安だとすると、自分のCDライブラリはそろそろヤバめということになる。プログレとかAORとか、GRP全盛期のフュージョンとか、購入から20年を経ているものが多いためだ。ふだんは湿気の少ない冷暗所(書斎ともいう)に保管しているが、それらが一斉に寿命を迎えたらかなりへこむ。
だから、CDが健全なうちにCD-Rへバックアップしようと考えている。数百枚は格納できるケースにCD-Rを収納し、PPシートへ管理タグ代わりにJAN-13/EAN-13バーコードを貼り付けよう、という計画なのだ。そのCDの情報が必要になったときは、スマートフォンのバーコード読み取りアプリを使えばいい。これも一種のマッシュアップと考えるが、いかがだろう?
肝心の方法だが……Rubyのバーコード生成ライブラリ「barby」を使うことにした。バーコードを生成してくれるWebサイトもあるが、さすがに数百枚ものCDを処理したくない。CD-Rへのバックアップは手作業にならざるをえないとして、チェックデジットを除いた12桁の数値をブラウザのテキストフィールドに手入力することは避けたい、そう考えれば自動処理を模索するのは必然だ。
準備はかんたん、Rubyを標準装備するOS Xの場合、TerminalからgemコマンドでBarbyとPNG出力用ライブラリをインストールすればOK。あとはスクリプトを用意すれば、バーコードを生成できるはずだ。
・BarbyおよびPNG出力用ライブラリのインストール $ sudo gem install barby $ sudo gem install barby-chunky_png
とりあえず作成したスクリプトは、ヘッダ部分を除き実質1行というかんたんなもの。それでも、引数として12桁の数値 — JAN-13/EAN-13バーコードの下にある数値の右端を除いた12桁 — を与え、出力先のPNGファイルを指定して実行すれば、立派なバーコードを作成できる。
今回はテストのためごく基本的な機能しか用意していないが、CSVファイルから数値を入力したり、複数のバーコードを帳票状に整形したりすれば、より実用的になるはず。マッシュアップは道半ば、引き続き改良を続けてみたい。
リスト1:バーコード生成用スクリプト(makeJAN13.rb) require 'rubygems' require 'barby' require 'barby/barcode/ean_13' require 'barby/outputter/png_outputter' print Barby::EAN13.new(ARGV[0]).to_png
コマンド実行例 $ ruby makeJAN13.rb 498800970102 > barcode.png
iPhoneでバーコード読み取りアプリ「ZBar Barcode Reader」を使い、今回用意したスクリプトで出力したPNG画像を読み取ったところ。ベンリに使えるかも
最新ニュース
coron's Source - 全国 generated by Nordot
- 「PFAS」の一部 検査義務付けの方針固まる 10都府県42件で国の暫定目標値を超えた数値検出 環境省と国土交通省の検出調査by TBS NEWS DIG on 2024年12月24日 at PM 4:12
人体に有害な可能性が指摘されている「PFAS」の一部について、水道事業者などを対象とした検査義務付け...
- 「指紋の神様」塚本宇兵さん死去 元警視庁鑑識課by 共同通信 on 2024年12月24日 at PM 3:49
警視庁鑑識課で長年、指紋捜査に従事し「指紋の神様」と呼ばれた塚本宇兵(つかもと・うへい)さんが22日...
- 歌会始の入選者決まる 皇居で来年1月22日開催by 共同通信 on 2024年12月24日 at PM 3:40
皇居・宮殿で来年1月22日に催される「歌会始の儀」で、歌が詠み上げられる一般の入選者10人が決まり、...
- 「少数与党なので自分たちの意見がそのまま通るわけではない」石破総理 「政治改革」関連法の成立について 臨時国会閉会 「企業・団体献金」の扱いは先送りby TBS NEWS DIG on 2024年12月24日 at PM 3:17
臨時国会が閉会。石破総理が「少数与党なので自分たちの意見がそのまま通るわけではない」と振り返りました...
- NY株、小動きby 共同通信 on 2024年12月24日 at PM 3:13
【ニューヨーク共同】24日のニューヨーク株式市場のダウ工業株30種平均は小動きで始まり、午前10時現...
- イオン銀に業務改善命令へ 金融庁、マネロン対策不備by 共同通信 on 2024年12月24日 at PM 3:06
金融庁がイオン銀行に対し、マネーロンダリング(資金洗浄)対策に不備があるとして銀行法に基づく業務改善...
- <あのころ>新小結2人に師匠にっこり 52年前の12月25日by 共同通信 on 2024年12月24日 at PM 3:01
1972(昭和47)年12月25日、初場所の新番付が発表され、三保ケ関部屋から2人の新小結が誕生した...
- 「106万円の壁」撤廃など大筋了承 厚生労働省の審議会by FNNプライムオンライン on 2024年12月24日 at PM 3:00
「106万円の壁」撤廃の方針を盛り込んだ報告書案が、厚生労働省の審議会で大筋で了承されました。 報告...