パオ・アット・オフィス、WebAssemblyを核としたバーコード生成ライブラリ7製品をリリース

未分類

WebAssemblyがもたらす汎用性:Barcode.wasm

「Barcode.wasm」は、C++で書かれた高性能バーコードエンジンをWebAssembly(WASM)にコンパイルした製品です。ブラウザ内でサーバー通信なしに、1次元・2次元あわせて18種のバーコードを生成できます。JavaScript / TypeScriptからnpmパッケージを通じて利用可能です。

WebAssemblyは、ブラウザだけでなくWasmer、Wasmtime、Node.jsなどのWASM実行環境でも動作するため、「Barcode.wasm」の.wasmファイルは、バインディングを書き換えることで多様な言語から呼び出せる汎用エンジンとして機能します。このアーキテクチャが、今回の複数言語版同時リリースの基盤となっています。

C++コアからWASM経由で各言語に展開するアーキテクチャ図

Python開発者向けの「Barcode.Python」

Python版の「Barcode.Python」は、WASM版、Native版、Pure Python版の3エディションで提供されます。

WASM版は、Node.jsかWASMランタイムがあれば動作し、OSやPythonのバージョンに依存しない高い互換性を提供します。Native版は高速性が特長ですが、C++コンパイラやビルド済みバイナリが必要です。両エディションは同一APIで設計されており、開発の柔軟性を確保しています。

Pure Python版は、C++やWASMに依存しない100%Pythonで書かれたエンジンです。ReportLabのキャンバスにバーコードを直接描画できるほか、画像処理ライブラリPillowとも連携し、PNG・JPEG画像としてのバーコード出力に対応します。ソースコード付きで提供され、カスタマイズが可能です。

Barcode.Python デモサイト PDF帳票出力例

Flutter開発者向けの「Barcode.Flutter」

モバイル・デスクトップ・WebをワンコードベースでカバーするFlutter向けには、「Barcode.Flutter」が提供されます。こちらもWASM版、Plugin版、Pure Dart版の3エディション構成です。

Plugin版はdart:ffiでC++をバインドし、ネイティブ環境で高速に動作します。WASM版はネイティブバイナリへの依存がなく、サーバーでもクライアントでも動作する汎用性があります。

Pure Dart版は、ネイティブ依存を一切持たない100%Dart実装です。FlutterのCustomPainterを通じてCanvasにバーコードを直接描画できるほか、PDF生成ライブラリpdfパッケージと連携し、PDF帳票へのバーコード埋め込みにも対応します。SVG出力も標準サポートし、Webを含む全6プラットフォームで動作します。こちらもソースコード付属で、開発者が自由にカスタマイズできます。

Barcode.Flutter デモサイトでのバーコード表示例

Go・Rust・Ruby・Swift版も同時デビュー

「Barcode.wasm」の共通基盤としての真価を示すように、Go、Rust、Ruby、Swiftの4言語版も同時にリリースされました。バインディングを書き換えることで新しい言語への対応が実現されています。

  • Barcode.Go: Pure Go版とWASM版の2パッケージ構成。go getで導入可能で、REST APIサーバーのサンプルが付属します。

  • Barcode.Rust: Pure Rust版とWASM版の2パッケージ構成。cargo addで導入でき、axumを使ったREST APIサーバーのサンプルが付属します。

  • Barcode.Ruby: Native版(C++ FFI)・WASM版・Pure Ruby版の3パッケージ構成。gem installで導入可能で、WASM版はNode.jsがあれば動作します。Pure Ruby版はソースコード付きです。

  • Barcode.Swift: Pure Swift版とWASM版の2パッケージ構成。Swift Package Managerで導入でき、Vaporと組み合わせることでサーバーサイドSwiftでのREST API構築が可能です。

これら4言語版すべてにおいて、PNG・SVG出力対応、全18種バーコード対応、REST APIサンプル付属というPao@Officeの標準仕様が適用されています。

全20種のバーコードに対応と製品の特長

Python版・Flutter版を含む全製品は、QRコード、DataMatrix、PDF417などの2次元バーコードから、JAN・Code128・GS1-128・GS1 DataBar・郵便カスタマバーコード・標準料金代理収納用コンビニバーコードまで、業務で必要とされる20種のバーコードを網羅しています。生成されるバーコードの品質は、RJSバーコード検査機Model L2000による検査で裏打ちされています。

製品のデモサイトには、「2ステップ版」と「All-in-One版」の2種類が用意されており、導入から全機能の把握までをサポートします。

2ステップ版デモとAll-in-One版デモの画面スクリーンショット

Pao@Officeのバーコード製品は、以下の特長を持ちます。

  1. ランタイムライセンスフリー: 開発ライセンスのみ販売され、運用環境ではライセンスが無償で利用可能です。
  2. 出力バーコードの読み取り精度が高い: RJSレーザーインスペクター Model L2000で検査済みであり、プリンタによる線のにじみに対してドット単位で線幅を微調整できます。
  3. バーコード生成が容易で使いやすい: 全製品で「2ステップ」のコードでバーコード出力が可能であり、豊富なサンプルコードが付属します。

製品ラインナップと価格

リリースされた製品は以下の通りです。

  • WebAssemblyバーコード生成ライブラリ「Barcode.wasm」(税込22,000円)

  • Pythonバーコード生成ライブラリ「Barcode.Python」(税込11,000円~22,000円)

  • Flutter/Dartバーコード生成ライブラリ「Barcode.Flutter」(税込11,000円~22,000円)

  • Goバーコード生成ライブラリ「Barcode.Go」(税込11,000円~22,000円)

  • Rustバーコード生成ライブラリ「Barcode.Rust」(税込11,000円~22,000円)

  • Rubyバーコード生成ライブラリ「Barcode.Ruby」(税込11,000円~22,000円)

  • Swiftバーコード生成ライブラリ「Barcode.Swift」(税込11,000円~22,000円)

  • Javaバーコード生成ライブラリ「Barcode.jar」バージョンアップ(税込22,000円)

各製品のエディションごとの価格は以下の通りです。

  • Barcode.wasm: 1開発ライセンス(税込22,000円)

  • Barcode.Python: WASM版(税込11,000円) / Native版(税込11,000円) / Pure Python版(税込22,000円・ソースコード付き)

  • Barcode.Flutter: WASM版(税込11,000円) / Plugin版(税込11,000円) / Pure Dart版(税込22,000円・ソースコード付き)

  • Barcode.Go: Pure Go版(税込22,000円) / WASM版(税込11,000円)

  • Barcode.Rust: Pure Rust版(税込22,000円) / WASM版(税込11,000円)

  • Barcode.Ruby: Native版/WASM版(税込11,000円) / Pure Ruby版(税込22,000円・ソースコード付き)

  • Barcode.Swift: Pure Swift版(税込22,000円) / WASM版(税込11,000円)

  • Barcode.jar: 1開発ライセンス(税込22,000円)

製品サイト

各製品のオンラインデモ、試用版ダウンロード、マニュアル、サンプルコードは以下の製品サイトで利用できます。

会社概要

  • 社名: 有限会社パオ・アット・オフィス(Pao@Office)

  • 設立日: 2001年10月

  • 資本金: 1,000万円

  • 代表者名: 代表取締役 村井 誠

  • 企業サイト: https://www.pao.ac/

  • Facebook: https://www.facebook.com/pao.at.office

  • 社員数: 10名

  • 事業所: 本社 (千葉県習志野市谷津3-29-2-401)、東京事務所(東京都港区新橋1-8-3 住友新橋ビル7F)

  • 事業内容: 1.ソフトウエアの設計・製造・販売、2.システム運用サポート、3.ソフトウエア開発支援ツールの開発、および販売

※「QRコード」は株式会社デンソーウェーブの登録商標です。

コメント

タイトルとURLをコピーしました