pub struct QrCode { /* private fields */ }
Expand description
Define QR code
Implementations§
Source§impl QrCode
impl QrCode
Sourcepub fn new<T: AsRef<[u8]>>(
content: T,
ecl: QrCodeEcc,
) -> Result<Self, DataTooLong>
pub fn new<T: AsRef<[u8]>>( content: T, ecl: QrCodeEcc, ) -> Result<Self, DataTooLong>
Create a QR code
Examples found in repository?
examples/qrcode.rs (line 4)
3fn main() {
4 let mut qrcode = QrCode::new(b"Hello Rust !", QrCodeEcc::Medium).unwrap();
5
6 qrcode.zoom(10).margin(10);
7
8 // -------- Bitmap
9 let buf = qrcode.generate(Color::Bitmap(false, true)).unwrap();
10 std::fs::write("./qrcode.bitmap.png", buf).unwrap();
11
12 // -------- Grayscale
13 let buf = qrcode.generate(Color::Grayscale(0, 255)).unwrap();
14 std::fs::write("./qrcode.grayscale.png", buf).unwrap();
15
16 // -------- RGB
17 let buf = qrcode
18 .generate(Color::Rgb([3, 169, 244], [113, 140, 0]))
19 .unwrap();
20 std::fs::write("./qrcode.rgb.png", buf).unwrap();
21
22 // -------- RGBA
23 let buf = qrcode
24 .generate(Color::Rgba([137, 89, 168, 255], [255, 255, 255, 0]))
25 .unwrap();
26 std::fs::write("./qrcode.rgba.png", buf).unwrap();
27}
Sourcepub fn zoom(&mut self, zoom: u32) -> &mut Self
pub fn zoom(&mut self, zoom: u32) -> &mut Self
Enlarge the QR code according to the original scale, Default value: 1
Examples found in repository?
examples/qrcode.rs (line 6)
3fn main() {
4 let mut qrcode = QrCode::new(b"Hello Rust !", QrCodeEcc::Medium).unwrap();
5
6 qrcode.zoom(10).margin(10);
7
8 // -------- Bitmap
9 let buf = qrcode.generate(Color::Bitmap(false, true)).unwrap();
10 std::fs::write("./qrcode.bitmap.png", buf).unwrap();
11
12 // -------- Grayscale
13 let buf = qrcode.generate(Color::Grayscale(0, 255)).unwrap();
14 std::fs::write("./qrcode.grayscale.png", buf).unwrap();
15
16 // -------- RGB
17 let buf = qrcode
18 .generate(Color::Rgb([3, 169, 244], [113, 140, 0]))
19 .unwrap();
20 std::fs::write("./qrcode.rgb.png", buf).unwrap();
21
22 // -------- RGBA
23 let buf = qrcode
24 .generate(Color::Rgba([137, 89, 168, 255], [255, 255, 255, 0]))
25 .unwrap();
26 std::fs::write("./qrcode.rgba.png", buf).unwrap();
27}
Sourcepub fn margin(&mut self, margin: u32) -> &mut Self
pub fn margin(&mut self, margin: u32) -> &mut Self
Set the distance between the QR code and the edge of the picture
Examples found in repository?
examples/qrcode.rs (line 6)
3fn main() {
4 let mut qrcode = QrCode::new(b"Hello Rust !", QrCodeEcc::Medium).unwrap();
5
6 qrcode.zoom(10).margin(10);
7
8 // -------- Bitmap
9 let buf = qrcode.generate(Color::Bitmap(false, true)).unwrap();
10 std::fs::write("./qrcode.bitmap.png", buf).unwrap();
11
12 // -------- Grayscale
13 let buf = qrcode.generate(Color::Grayscale(0, 255)).unwrap();
14 std::fs::write("./qrcode.grayscale.png", buf).unwrap();
15
16 // -------- RGB
17 let buf = qrcode
18 .generate(Color::Rgb([3, 169, 244], [113, 140, 0]))
19 .unwrap();
20 std::fs::write("./qrcode.rgb.png", buf).unwrap();
21
22 // -------- RGBA
23 let buf = qrcode
24 .generate(Color::Rgba([137, 89, 168, 255], [255, 255, 255, 0]))
25 .unwrap();
26 std::fs::write("./qrcode.rgba.png", buf).unwrap();
27}
Sourcepub fn generate(&self, color: Color) -> Result<Vec<u8>, EncodingError>
pub fn generate(&self, color: Color) -> Result<Vec<u8>, EncodingError>
Get png data of QR code
Examples found in repository?
examples/qrcode.rs (line 9)
3fn main() {
4 let mut qrcode = QrCode::new(b"Hello Rust !", QrCodeEcc::Medium).unwrap();
5
6 qrcode.zoom(10).margin(10);
7
8 // -------- Bitmap
9 let buf = qrcode.generate(Color::Bitmap(false, true)).unwrap();
10 std::fs::write("./qrcode.bitmap.png", buf).unwrap();
11
12 // -------- Grayscale
13 let buf = qrcode.generate(Color::Grayscale(0, 255)).unwrap();
14 std::fs::write("./qrcode.grayscale.png", buf).unwrap();
15
16 // -------- RGB
17 let buf = qrcode
18 .generate(Color::Rgb([3, 169, 244], [113, 140, 0]))
19 .unwrap();
20 std::fs::write("./qrcode.rgb.png", buf).unwrap();
21
22 // -------- RGBA
23 let buf = qrcode
24 .generate(Color::Rgba([137, 89, 168, 255], [255, 255, 255, 0]))
25 .unwrap();
26 std::fs::write("./qrcode.rgba.png", buf).unwrap();
27}
Trait Implementations§
Auto Trait Implementations§
impl Freeze for QrCode
impl RefUnwindSafe for QrCode
impl Send for QrCode
impl Sync for QrCode
impl Unpin for QrCode
impl UnwindSafe for QrCode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more