Barcode.jarは、Java開発者向けバーコード生成ライブラリです。 SVG出力対応・Base64出力対応。Spring Boot / Docker環境に最適。
価格: 20,000円(税込:22,000円)

最新リリース情報

ver 5.3.2 リリース ( 2026/10/18 更新履歴)

GS1-128・Code93・GS1データバーなどの不具合を修正

GS1-128 で、英字のあとに 4 桁以上の数字が続く入力(例:AB123456)が読み取れない不具合を修正しました。
Code93 のチェックキャラクタ(C・K)の計算を修正しました。
GS1データバー 標準型・二層型・拡張型で、例外が発生することがある不具合を修正しました。
一部のバーコードを画像データ(Base64・メモリストリーム)で出すと、空になるか例外になる不具合を修正しました。
UPC-A の drawDelicate で、チェックデジットが正しくない不具合を修正しました。
UPC-E のチェックデジットが正しく計算されない場合がある不具合を修正しました。
UPC-E で、チェックデジットが 0 になるコードが読み取れない不具合を修正しました。
体験版(ZIP)で 2 次元バーコードに重ねる SAMPLE を、読み取りに影響しないよう中央に薄く表示するようにしました。
サンプルの説明(README)にある Windows のコマンド例を、PowerShell でもそのまま動く形(.\gradlew.bat)に直しました。
SVG の出力で、ブラウザー以外の一部の表示ソフト(文字の縦位置の指定に対応していないもの)で、バーの下の文字の位置が上にずれることがあったのを直しました。ブラウザーでの表示は変わりません。

ver 5.2.0 リリース ( 2026/08/24 更新履歴)

QRコードのバージョン自動選択に対応

QRコードにバージョン0(オート)を追加し、入力するデータ量に応じて適切なQRバージョンを自動決定できるようにしました。 QRコードのデフォルトバージョンも、従来の5から0(オート)へ変更しました。 固定したい場合は、これまでどおりバージョン1~40を指定できます。


ver 5.1.0 リリース ( 2026/07/30 更新履歴)

一次元バーコードの添え字描画を改善

バーコード下部に表示する文字の均等割り付けを、実際の文字形状に基づいて配置する方式へ改善しました。 CODE39をはじめとする一次元バーコードで末尾文字の欠けを防ぎ、CODE39の文字間ギャップと指定幅処理を修正しました。 コンビニ収納代行用GS1-128の2段表示も適切な文字間隔で描画します。


ver 5.0.0 リリース ( 2026/01/30 )

今回のリリースは、Barcode.jar 史上最大のアップデートです。
SVG出力対応、Base64/メモリストリーム出力、前景色・背景色のカスタマイズなど、 現代のWebアプリケーション開発に必要な機能を多数追加しました。

SVG出力対応

SVG(Scalable Vector Graphics)形式での出力に対応しました。 SVGはベクター形式のため、拡大縮小してもバーコードの精度が劣化しません。 Webアプリケーションでのブラウザ表示に最適です。 すべてのバーコードクラスでSVG出力に対応しています。

// SVG出力

Code128 barcode = new Code128();
String svg = barcode.writeSVGToString("123456789ABCD", 0, 0, 300, 80);

SVGの優位性:

Base64出力・メモリストリーム出力対応

バーコード画像をBase64文字列やメモリストリーム(ByteArrayOutputStream)として取得できます。 引数なしコンストラクタを使用し、draw() メソッド実行後に getImageBase64() または getImageStream() で取得します。 HTMLの <img> タグに直接埋め込んだり、Spring Bootで直接レスポンスとして返却できます。 ファイルI/Oが不要なため、Docker / コンテナ環境でも一時ファイルを作成する必要がありません。

// Base64出力・メモリストリーム出力

Code128 barcode = new Code128();  // 引数なしコンストラクタ
barcode.draw("123456789ABCD", 0, 0, 300, 80);

String base64 = barcode.getImageBase64();           // Base64文字列を取得
ByteArrayOutputStream stream = barcode.getImageStream();  // MemoryStreamを取得

引数なしコンストラクタの追加

すべてのバーコードクラスに引数なしのコンストラクタを追加しました。 Graphics2Dオブジェクトや出力ファイルパスを指定せずにインスタンスを生成でき、 SVG出力やBase64出力が可能になります。

// 引数なしコンストラクタの使用例

// 従来の方法(Graphics2Dに描画)
Code128 barcode1 = new Code128(graphics2d);
barcode1.draw("CODE", 10, 10, 300, 80);

// 新しい方法(SVG/Base64/メモリストリーム出力)
Code128 barcode2 = new Code128();  // 引数なし
barcode2.draw("CODE", 0, 0, 300, 80);
String base64 = barcode2.getImageBase64();  // Base64取得
String svg = barcode2.writeSVGToString("CODE", 0, 0, 300, 80);  // SVG取得

ForeColor / BackColor 指定対応

バーコードの前景色(バーの色)と背景色を自由に指定できるようになりました。 barcode.setForeColor(Color.BLUE);、barcode.setBackColor(Color.LIGHT_GRAY); のように指定することで、デザインに合わせたカスタマイズが可能です。 背景色を設定しない(null)ことで、透明背景のバーコードも作成可能です。

Draw()メソッドの精度向上

Draw()メソッド(幅ぴったり描画)の精度が格段に向上しました。 従来は大きなキャンバスにバーコードを描画してから指定サイズに縮小スケーリングしていたため、 スケーリング時にバーの幅が丸められ、精度が低下する問題がありました。 今回のリリースでは、1ユニットあたりの幅を小数値で計算し、指定幅に直接描画する方式に変更しました。 これにより、スケーリングによる精度劣化がなくなり、幅ぴったり描画の精度が格段に向上しています。

サンプルプログラムの大幅改善

Spring Boot + Dockerで動作するWebアプリケーションサンプルを大幅に改善しました。 デモサイト で全機能をお試しいただけます。

デモサイトで試す Spring Boot + Docker サンプル Download
機能 説明 主なメリット
SVG出力対応 ベクター形式でバーコード出力 拡大縮小しても精度劣化なし
Base64/ストリーム出力 メモリ上でバーコード画像取得 ファイルI/O不要、Docker最適
引数なしコンストラクタ Graphics2D不要でインスタンス生成 コード簡潔化、柔軟な出力
ForeColor/BackColor 前景色・背景色のカスタマイズ デザイン自由度向上
Draw()精度向上 幅ぴったり描画の改善 バーコード読み取り精度向上

Barcode.jarのご紹介動画

Spring BootとDockerを使用したWEBアプリケーションで、バーコードを描画するさまざまな方法を紹介した動画を作成しました。 ぜひご覧ください。

メディア掲載

前回 ver 4.0.0 リリースについて、多くのメディアでご紹介いただいております。ありがとうございます。

Barcode.jar について、これまでも多くのメディアで掲載していただいております。ありがとうございます。

バーコード出力(ブラウザ・画像・PDF出力)サンプルをご提供

当社のバーコード出力ライブラリ「Barcode.jar」を使用したWEBアプリケーションのサンプルを公開しています。Spring Bootを用いて作成されたこのアプリケーションは、Docker環境で実行されており、バーコード出力の動作確認ができます。

当ライブラリは、PDF出力を含めた多彩な出力に対応しており、利用者にとって使用しやすい製品を目指しました。

また、コンビニエンスストア標準料金収納用バーコードや郵便カスタマバーコード、そして最新のGS1-Databarなど、多数のバーコードに対応しています。

ブラウザでのバーコード出力サンプルと、PDFでの出力サンプルを用意しておりますので、ぜひお試しください。

さらに、このデモサイトで動作している「バーコードライブラリ+Spring Boot+Dockerプロジェクト」をダウンロードして、お客様の環境でもお試しいただけます。Dockerでの起動もできますし、直接起動も可能です。ぜひ、ダウンロードしてお試しください。

WEBアプリケーション以外の多くのサンプルプログラムもご用意していますので、ぜひご覧ください。

対応バーコード

Barcode.jarは、以下のバーコードに対応しております。

バーコードの種類 種類内訳
JANコード
  • JAN-13 (EAN-13)
  • JAN-8 (EAN-8)
UPC-A
UPC-E
Interleaved 2 of 5 (ITF)
Matrix 2of5
NEC 2of5 (COOP 2of5)
NW-7 (CODABAR)
CODE39
CODE93
CODE128
GS1-128 (UCC/EAN-128)
  • 標準料金代理収納用バーコード(コンビニバーコード)
  • 医療用 医薬品等のバーコード
  • 医療用 医療材料等のバーコード
  • 食肉標準物流バーコード「基本バーコード」
郵便カスタマバーコード
QRコード
DataMatrix (GS1 DataMatrix)
PDF417
GS1データバー(RSS)
  • Omni-directional - 標準型
  • Stacked - 二層型
  • Stacked Omni-directiona - 標準二層型
  • Limited - 限定型
  • Expanded - 拡張型
  • Stacked Expanded - 拡張多層型

機能概要

Barcode.jarでは、バーコードの種類ごとにクラスとしてご利用いただけます。
Barcode.jarの各バーコード作成クラスは、以下の4つの方法でバーコードを出力できます。

機能概要

SVG出力機能 ★Ver 5.0 新機能

SVG(Scalable Vector Graphics)形式でバーコードを出力できます。 ベクター形式のため、拡大縮小しても精度が劣化せず、Webアプリケーションでのブラウザ表示に最適です。

SVGの優位性

使用例

// SVG文字列を取得

Code128 barcode = new Code128();
String svg = barcode.writeSVGToString("123456789ABCD", 0, 0, 300, 80);

// HTMLに埋め込む場合
// <div>${svg}</div>

// QRコードのSVG出力

QRCode qr = new QRCode();
String svg = qr.writeSVGToString("https://www.pao.ac/", 0, 0, 200, 200);

Base64/メモリストリーム出力 ★Ver 5.0 新機能

バーコード画像をBase64文字列やメモリストリーム(ByteArrayOutputStream)として取得できます。 ファイルI/Oが不要なため、Docker / コンテナ環境でも一時ファイルを作成する必要がありません。

Base64/メモリストリームの優位性

使用例

// Base64文字列を取得

Code128 barcode = new Code128();  // 引数なしコンストラクタ
barcode.draw("123456789ABCD", 0, 0, 300, 80);

String base64 = barcode.getImageBase64();

// HTMLで使用
// <img src="data:image/png;base64,${base64}" alt="Barcode" />

// メモリストリームを取得してSpring Bootで返却

@GetMapping("/barcode")
public ResponseEntity<byte[]> getBarcode() {
    Code128 barcode = new Code128();
    barcode.draw("123456789ABCD", 0, 0, 300, 80);

    ByteArrayOutputStream stream = barcode.getImageStream();

    return ResponseEntity.ok()
        .contentType(MediaType.IMAGE_PNG)
        .body(stream.toByteArray());
}

特徴

1. 高い精度
当社はRJSのバーコード検査機、Model L2000を使用してバーコードの精度を細かく検査しています。このため、他社のバーコード作成ツールに比べても高精度なバーコードを作成できます。また、プリンタによる線のにじみや読み取り精度の低下にも対応し、バーコードの線幅微調整も自在に行えます。
2. 使いやすさ
直感的なインターフェースを提供しています。マニュアルの使用例に示されている通り、2~3つのステップでバーコードの出力が可能です。
3. 軽量
「Barcode.jar」はシステムへの負荷が極めて小さく、わずか数MBのメモリで動作します。
4. 汎用性
バーコードの出力は、Graphics2Dオブジェクト、画像ファイル、SVG形式、Base64/メモリストリームとして提供されます。そのため、バーコードを作成するアプリケーションからさまざまな用途で利用することができます。PDFへの出力にも容易かつ高精度なバーコードを生成できます。PDF出力やブラウザ出力に関しては、すぐに試用できるサンプルプログラムも提供しています。
5. SVG出力対応
SVG(Scalable Vector Graphics)形式での出力に対応しています。SVGはベクター形式のため、拡大縮小してもバーコードの精度が劣化しません。Webアプリケーションでのブラウザ表示に最適です。
6. Docker / コンテナ環境に最適
Base64出力・メモリストリーム出力に対応しており、ファイルI/Oが不要です。一時ファイルを作成する必要がないため、Docker / コンテナ環境での運用が容易です。Spring Boot等のWebフレームワークとの親和性も高く、@ResponseBodyで直接返却可能です。

「Barcode.jar」を使用することで、Javaを活用したWEBシステム開発において、簡単かつ便利にバーコードの出力を行うことができます。

動作環境

製品価格・ライセンス

価格:

  • 1開発ライセンス:22,000円(税込) / 20,000円(税抜)
  • ソースコード付き:1開発ライセンス:101,200円(税込) / 92,000円(税抜)

※必要開発ライセンス数:Barcode.jarを利用して開発するパソコンの台数分必要になります。

※ランタイムライセンス:無償で提供されます。開発環境にのみライセンスが必要です。お客様環境など開発環境ではない場合は、配布は無償です。

ダウンロード

GitHub と Maven Central

Spring Boot と JavaFX のサンプルを GitHub で公開しています。Maven Central からも組み込めます(体験版)。

GitHub(barcode-jar) ↗

【サンプルプログラムについて】

試用版の ZIP には、Java の版に合わせたサンプルプログラムが入っています。ZIP の中の「はじめにお読みください(Javaの版とサンプル).md」に、動かし方を書いています。

ダウンロードJava の版画面(デスクトップ)のサンプルWeb のサンプル
barcode.jar.8.zipJava 8 以上SwingSpring Boot 2.7.18
barcode.jar.11.zipJava 11 以上SwingSpring Boot 2.7.18
barcode.jar.17.zipJava 17 以上JavaFX 21.0.6Spring Boot 3.5.16

どちらのサンプルも、20 種類のバーコードを表示し、画像(PNG・SVG など)や PDF(Apache PDFBox 3.0.8)に出力します。Spring Boot のサンプルは、そのまま起動するほか、Docker でも起動できます。
Java 17 以上のサンプル(JavaFX・Spring Boot 3.5.16)は GitHub でも公開しています。

ver 4.0以降へのアップグレードについて

これまで、2016年 Barcode.jar ver 3.0 以来、アップグレードは無償とさせていただいておりました。
ver 4.0 より前のバージョンから ver 4.0 以降へのアップグレードは有償とさせていただきます。
アップグレード価格は、定価の3割(税込6,600円)で承らせていただきます。
アップグレードにてご購入いただく際は、info@pao.ac までご連絡ください。
なお、今後当面、アップグレードは無償とさせていただく予定でございます。
よろしくお願いいたします。

サポート

製品のサポートは情報共有のため で行わせていただいております。

個別にメール(info@pao.ac)も多くいただいております。 どちらでも結構です。お問い合わせ・ご意見・ご要望等よろしくお願いいたします。

本製品(Barcode.jar)の保守・保証につきましては、 保守・保証に関する規定をご覧ください。