This crate provides functions to generate QR Code matrices and images in RAW, PNG and SVG formats.
Vec<Vec<bool>>
.```rust extern crate qrcode_generator;
use qrcode_generator::QrCodeEcc;
let result: Vec
println!("{:?}", result); ```
```rust extern crate qrcode_generator;
use qrcode_generator::QrCodeEcc;
let result: Vec
println!("{:?}", result); ```
```rust extern crate qrcode_generator;
use qrcode_generator::QrCodeEcc;
qrcodegenerator::topngtofile("Hello world!", QrCodeEcc::Low, 1024, "tests/data/file_output.png").unwrap(); ```
```rust extern crate qrcode_generator;
use qrcode_generator::QrCodeEcc;
let result: String = qrcodegenerator::tosvgtostring("Hello world!", QrCodeEcc::Low, 1024, None::<&str>).unwrap();
println!("{:?}", result); ```
```rust extern crate qrcode_generator;
use qrcode_generator::QrCodeEcc;
qrcodegenerator::tosvgtofile("Hello world!", QrCodeEcc::Low, 1024, None::<&str>, "tests/data/file_output.png").unwrap(); ```
The to_image
and to_image_buffer
functions can be used, if you want to modify your image.
Every to_*
function has a corresponding _from_segments
function. You can concatenate segments by using different encoding methods, such as numeric, alphanumeric or binary to reduce the size (level) of your QR code matrix/image.
```rust extern crate qrcode_generator;
use qrcode_generator::{QrCodeEcc, QrSegment};
let first = "1234567";
let second = "ABCDEFG";
let firstchars: Vec
let segments = [QrSegment::makenumeric(&firstchars), QrSegment::makealphanumeric(&secondchars)];
let result: Vec
println!("{:?}", result); ```
More segments optimization apporaches: magiclen/qrcode-segments-optimizer
Disable the default features to compile this crate without std.
toml
[dependencies.qrcode-generator]
version = "*"
default-features = false
https://crates.io/crates/qrcode-generator
https://docs.rs/qrcode-generator