Barcode.Swiftは、Swiftでバーコードを生成するライブラリです。
Vaporと組み合わせてREST APIサーバーを構築できるSwift版(Pure Swift ライブラリ)に加え、
C++ バーコードエンジンを Node.js 経由で利用するWASM版を提供しています。

最新リリース情報

Barcode.Swift 1.0.0

2026年2月 リリース

Swiftによるバーコード生成ライブラリの初回リリース。
Pure Swift版(Vapor REST API対応)とWASM版(C++ WASMエンジン)の2パッケージを提供。
PNG / JPEG / SVG出力に対応。全18種バーコードをサポート。

2つのパッケージ

用途や環境に応じて、最適なパッケージをお選びください。

WASM版(C++ WASMエンジン)

C++ バーコードエンジン + Node.js

C++ バーコードエンジンを Node.js 経由で利用。Swift から簡単にバーコードを生成できます。

  • C++ 高速バーコードエンジン搭載
  • Node.js サブプロセスで WASM 実行
  • Swift 標準ライブラリのみ使用
  • REST API サーバー構築に対応

11,000円(税込)

製品概要

🟠

Pure Swift実装

Cライブラリ不要。Pure Swiftで実装されているため、Swift Package Managerで簡単に導入できます。

🌐

Vapor REST API対応

Vaporと組み合わせてREST APIサーバーを簡単に構築。サーバーサイドSwiftに最適です。

🖼️

PNG / JPEG画像出力

バーコードをBase64形式のPNG/JPEG画像として出力。HTMLやAPIレスポンスに直接埋め込み可能。

📐

SVGベクター出力

拡大しても劣化しないSVG形式で出力。印刷や高解像度ディスプレイに最適です。

🔧

C++ WASMエンジン

C++ バーコードエンジンを Node.js 経由で利用。Swift から簡単に高品質バーコードを生成。

📦

Swift Package Manager

Package.swiftに依存を追加するだけでプロジェクトに組み込めます。

対応バーコード

分類 対応バーコード
1次元バーコード
  • Code39 / Code93 / Code128
  • GS1-128 (EAN-128)
  • NW-7 (Codabar)
  • ITF
  • Matrix 2of5 / NEC 2of5
  • JAN-8 / JAN-13 (EAN-8 / EAN-13)
  • UPC-A / UPC-E
  • GS1 DataBar (標準型/限定型/拡張型)
  • 郵便カスタマバーコード
2次元バーコード
  • QRコード
  • DataMatrix (GS1対応)
  • PDF417

製品価格・ライセンス

価格(1開発ライセンスあたり):

  • Swift版(Pure Swift ライブラリ):22,000円(税込) / 20,000円(税抜)
  • WASM版(C++ WASMエンジン):11,000円(税込) / 10,000円(税抜)

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

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

※Swift版:Pure Swift実装のバーコードライブラリをご利用いただけます。

※WASM版:C++ WASMエンジンを利用するSwiftラッパーとサンプルが含まれます。

デモ・ダウンロード

試用版には「SAMPLE」の透かしが表示されます。製品版をご購入いただくと透かしなしでご利用いただけます。

🟠

Swift版(Pure Swiftライブラリ)

Pure Swift実装のバーコードライブラリ。Vaporサンプル付き。
PNG / JPEG / SVG出力に対応。全18種バーコード対応。

🌐

WASM版(C++ WASMエンジン)

C++ バーコードエンジンを Node.js 経由で利用する Swift ラッパー。
Vaporサンプル付き。全18種バーコード対応。

Swift Package Manager

Swift版(Pure Swift ライブラリ)
.package(url: "https://github.com/pao-xx/barcode-pao-swift", from: "1.0.0") → GitHub
WASM版(C++ WASMエンジン)
.package(url: "https://github.com/pao-xx/barcode-pao-swift-wasm", from: "1.0.0") → GitHub

GitHub サンプルコード

Pure Swift版 サンプル
C++版 サンプル(WASM)

マニュアル

Barcode.Swift マニュアル(Pure Swift版)

Swift版のAPIリファレンス、インストール方法、サンプルコードを記載。

→ PDF→ HTML
Barcode.Swift マニュアル(C++ WASM版)

C++ WASMエンジンを利用するSwift版のAPIリファレンス。

→ PDF→ HTML

サンプルコード

Swift Package Managerでライブラリを追加するだけで、すぐにバーコードを生成できます。

基本的な使い方(QRコード)

import BarcodePao

// QRコード生成(2ステップ)
let qr = QR(outputFormat: BarcodeBase.FORMAT_PNG)  // Step 1
try qr.draw(code: "https://www.pao.ac/", size: 300)  // Step 2

// Base64 PNG画像を取得
let base64Img = try qr.getImageBase64()
print(base64Img)

1次元バーコード

import BarcodePao

// Code39 バーコード生成
let bc = Code39(outputFormat: BarcodeBase.FORMAT_PNG)
bc.showText = true
bc.textEvenSpacing = true
try bc.draw(code: "HELLO-123", width: 400, height: 100)

// Base64画像を取得
let base64Img = try bc.getImageBase64()

// ファイルに保存する場合
let imgBytes = try bc.getImageMemory()
try Data(imgBytes).write(to: URL(fileURLWithPath: "barcode.png"))

SVGベクター出力

import BarcodePao

// SVG形式で出力
let bc = Code128(outputFormat: BarcodeBase.FORMAT_SVG)
bc.showText = true
try bc.draw(code: "Hello-2026", width: 400, height: 100)

// SVG文字列を取得
let svgString = try bc.getSVG()

// ファイルに保存
try svgString.write(toFile: "barcode.svg", atomically: true, encoding: .utf8)

Vapor REST APIサーバー

import Vapor
import BarcodePao

func routes(_ app: Application) throws {
    app.post("draw-base64") { req -> String in
        let code = try req.content.get(String.self, at: "code")

        let qr = QR(outputFormat: BarcodeBase.FORMAT_PNG)
        try qr.draw(code: code, size: 300)

        return try qr.getImageBase64()
    }
}

// main.swift
let app = try Application(.detect())
try routes(app)
try app.run()

色やスタイルのカスタマイズ

import BarcodePao

let bc = JAN13(outputFormat: BarcodeBase.FORMAT_PNG)
bc.showText = true
bc.setForegroundColor(0, 0, 128, 255)     // 紺色のバー
bc.setBackgroundColor(255, 255, 240, 255)  // アイボリーの背景

try bc.draw(code: "4901234567894", width: 300, height: 120)
let base64Img = try bc.getImageBase64()

動作環境

Swift版 (Pure Swift ライブラリ)

  • Swift 5.10 以上
  • macOS / Linux
  • Cライブラリ不要(Pure Swift実装)
  • 依存ライブラリ: swift-png(自動取得)

WASM版 (C++ WASMエンジン)

  • Node.js 16 以上
  • Swift 5.10 以上
  • macOS / Linux
  • C++ WASMエンジンを Node.js 経由で実行

サポート

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

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

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