pub enum Mode {
Numeric,
Alphanumeric,
Byte,
Kanji,
}Expand description
The mode indicator, which specifies the character set of the encoded data.
Variants§
Numeric
The data contains only characters 0 to 9.
Alphanumeric
The data contains only uppercase letters (A–Z), numbers (0–9) and a few
punctuations marks (space, $, %, *, +, -, ., /, :).
Byte
The data contains arbitrary binary data.
Kanji
The data contains Shift-JIS-encoded double-byte text.
Implementations§
Source§impl Mode
impl Mode
Sourcepub fn length_bits_count(self, version: Version) -> usize
pub fn length_bits_count(self, version: Version) -> usize
Computes the number of bits needed to encode the data length.
use qrcode_rs::types::{Version, Mode};
assert_eq!(Mode::Numeric.length_bits_count(Version::Normal(1)), 10);This method will return Err(QrError::UnsupportedCharacterSet) if the
mode is not supported in the given version.
Sourcepub fn data_bits_count(self, raw_data_len: usize) -> usize
pub fn data_bits_count(self, raw_data_len: usize) -> usize
Computes the number of bits needed to some data of a given raw length.
use qrcode_rs::types::Mode;
assert_eq!(Mode::Numeric.data_bits_count(7), 24);Note that in Kanji mode, the raw_data_len is the number of Kanjis,
i.e. half the total size of bytes.
Trait Implementations§
Source§impl PartialOrd for Mode
impl PartialOrd for Mode
Source§fn partial_cmp(&self, other: &Self) -> Option<Ordering>
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
Defines a partial ordering between modes. If a <= b, then b contains
a superset of all characters supported by a.