性能基准测试
xBarcode vs rxing vs barcoders
Rust 条码生成库的综合评测。xBarcode 专为高吞吐量工业应用设计,优先考虑速度、准确性和功能完整性。
速度对比
生成每个条码的执行时间(越低越好)。测试平台:Apple M-Series Silicon。
| 码制 | xBarcode (µs) | rxing (ZXing 移植) (µs) | qrcode (µs) | fast_qr (µs) | 相对于 rxing 的加速比 |
|---|---|---|---|---|---|
| Aztec Code | 1.5 | 7.4 | - | - | 4.9x (vs rxing) ⚡ |
| PDF417 | 3.7 | 7.4 | - | - | 2.0x (vs rxing) ⚡ |
| Code 128 | 0.78 | 1.5 | - | - | 1.9x (vs rxing) ⚡ |
| Data Matrix | 1.4 | 2.8 | - | - | 2.0x (vs rxing) ⚡ |
| QR (Numeric) | 4.3 | - | 158.0 | 28.0 | 6.5x (vs fast_qr) ⚡ |
| QR (Mixed/Alpha) | 4.4 | - | 160.0 | 29.0 | 6.6x (vs fast_qr) ⚡ |
技术能力
Best Choice
xBarcode
- GS1 支持 (FNC1/AI) 完整 (验证 + 解析)
- 纠错等级 所有等级 (L/M/Q/H)
- 输出格式 SVG, PNG, JPG, 文本
- Kanji/UTF-8下面效率 最优 (智能模式切换)
- 零分配路径 是 (针对小负载)
rxing (ZXing 移植)
- GS1 支持 (FNC1/AI) 部分 / 原始数据
- 纠错等级 固定 / 有限
- 输出格式 矩阵 / 原始数据
- Kanji/UTF-8下面效率 通用 (体积较大)
- 零分配路径 否
barcoders
- GS1 支持 (FNC1/AI) 无
- 纠错等级 N/A (1D)
- 输出格式 SVG, String
- Kanji/UTF-8下面效率 不支持
- 零分配路径 否
结论
对于工业用例,xBarcode 是明确的赢家,在复杂的 2D 码上提供了 2x-7x 的加速,并拥有强大的 GS1 支持。