私はバーコードが好きだ。それも、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画像を読み取ったところ。ベンリに使えるかも
最新ニュース
はてなブックマーク - 新着エントリー - 総合 新着エントリー
- 疎結合で得た柔軟性と運用のリアル READYFORのマイクロフロントエンド現在地 - Findy Toolson 2025年7月16日 at PM 11:27
公開日 2025/07/17更新日 2025/07/17疎結合で得た柔軟性と運用のリアル READYFORのマイクロフロントエンド現在地 マイクロフロントエンドは、チームや機能単位でフロントエンドを疎結合化できる構成として注目を集めています。 ただし、導入すればすべてが解決するわけではありません。チーム体制やサービスの成長フェ...
- 日産の株主総会が大荒れする裏で、スズキはカレーの売れ行きが好調で種類を増やす発表をしていた「なぜスズキがレトルトカレーを売っているの?」on 2025年7月16日 at PM 10:38
リンク 日本経済新聞 故鈴木修さんにインド勲章 - 日本経済新聞 【ニューデリー=共同】インド政府は25日、自動車大手スズキ(本社・浜松市)を長年率い、昨年12月に94歳で死去した鈴木修さんに、卓越した貢献をたたえる国家勲章「パドマ・ビブシャン」を授与すると発表した。鈴木さんはスズキの経営トップを40年以上務め...
- 【海外記事紹介】OpenAIエンジニアが退職後に社内の様子を詳細に公開 — ほぼPythonのモノレポ環境、Azureベースのインフラ、Codexはたった7週間で立ち上げon 2025年7月16日 at PM 9:38
【海外記事紹介】OpenAIエンジニアが退職後に社内の様子を詳細に公開 — ほぼPythonのモノレポ環境、Azureベースのインフラ、Codexはたった7週間で立ち上げ
- 24色のペン:「女性の社会進出で少子化が進んだ」の的外れ=町野幸 | 毎日新聞on 2025年7月16日 at PM 9:30
「女性の社会進出が進むと、少子化が加速する」「専業主婦世帯の方が子どもが多い」――。 こうした誤解は、日本社会に今も根強くはびこっているようだ。 そして、社会的地位の高いとされる職業に就いている人、一定程度の学識がある人たちの一部にも「なんとなく」そう考えている人がいると聞く。「女性活躍に意見すると...
- イスラエル シリア首都暫定政府軍本部など空爆 緊迫した状況に | NHKon 2025年7月16日 at PM 9:22
イスラエル軍は16日、隣国シリアの首都ダマスカス中心部にある暫定政府の軍の本部などを空爆しました。イスラエルやシリア南部で暮らす少数派の住民を保護することなどを口実に空爆を行ったもので、イスラエルとシリア暫定政府との間でも緊迫した状況となっています。 イスラエル軍は16日「ダマスカスにあるシリアの政権...
- 米国はや関税収入大国、半年で13兆円 「安定財源化」で撤廃困難に - 日本経済新聞on 2025年7月16日 at PM 9:19
【ワシントン=高見浩輔、八十島綾平】関税による収入が米政府の財政を急速に潤している。トランプ政権発足後の1〜6月では計872億ドル(約13兆円)に達した。今後は法人税につぐ規模になると想定される。安定財源としての位置づけを固めれば今後政権が交代しても撤廃や引き下げが困難になる懸念がある。相互関税や自動車...
- 参政党が4600万円を支払った「疑惑の会社」を直撃! 代表の夫が語った「ロシアのペーパー会社だったら…」 | 文春オンラインon 2025年7月16日 at PM 9:14
7月20日投開票の参院選で“台風の目”となった参政党。代表の神谷宗幣氏(47)や候補者たちの一挙手一投足に注目が集まっている。 「7月14日にはロシア国営メディア『スプートニク』のXアカウントに、東京選挙区の参政党候補、さや氏のインタビュー動画が投稿され、『参政党はロシアのプロパガンダに利用されているのでは...
- ニトリ悩ます2年の空白 人手不足が阻む日本の成長 - 日本経済新聞on 2025年7月16日 at PM 5:11
川崎市のJFEスチール東日本製鉄所京浜地区跡地。ニトリホールディングス(HD)はうち約20万平方メートルを取得し物流センターを造る。基礎解体工事が進むが、人手不足が原因で全体の完成は当初計画から2年近く遅れる見込みだ。似鳥昭雄会長は店舗についても「建築はしばらくやめる」と話す。都市部での出店も自前の建物...