3 releases
0.2.3 | Aug 9, 2024 |
---|---|
0.2.2 | May 5, 2024 |
0.2.1 |
|
0.2.0 | May 1, 2024 |
0.1.0 |
|
#21 in #barcode
21KB
536 lines
PDF417 HUB3 in Rust
pdf417-hub3-rs is a 2D barcode generator of PDF417 HUB3 written in Rust and based on rxing - cRustacean Crossing. The barcode format / specification is defined here.
// data required for the barcode payment
let data = PaymentOrder::new(
"EUR".into(), // currency
Decimal::from(10 * 100), // total amount in cents
Sender::new(
"JOHN SMITH".into(), // name, surname
"SOMEWHERE OVER THE RAINBOW".into(), // address
"KRIŽEVCI".into(), // city
),
Receiver::new(
"UNKNOWN ENTITY".into(), // name, surname
"TRG SV. FLORIJANA 16".into(), // address
"48260 KRIŽEVCI".into(), // city
"HR000000000000000000".into(), // IBAN
"HR00".into(), // model
),
"0001".into(), // check/call number
"OTHR".into(), // type
"Some reason for the payment".into(), // description
);
let barcode = generate(data).unwrap();
// save it to multiple formats
let _ = save("barcode.pdf", &barcode);
let _ = save("barcode.svg", &barcode);
let _ = save("barcode.png", &barcode);
Alternative implementations
- pdf417-generator for JavaScript/Node.js
- php-pdf417-hub3 for PHP 8.1+
- pdf417-py for Python 3
- golang-pdf417 for Go
Dependencies
~12–18MB
~302K SLoC