Skip to main content

Encoder

Struct Encoder 

Source
pub struct Encoder { /* private fields */ }
Available on crate feature qr only.
Expand description

Configures and encodes Model 2 QR Code symbols.

Implementations§

Source§

impl QrEncoder

Source

pub const fn new(error_correction: QrErrorCorrection) -> Self

Creates an encoder with automatic mask selection and Model 2 versions 1 through 40.

Source

pub const fn version(self, version: QrVersion) -> Self

Selects one exact Model 2 QR Code version.

Source

pub const fn version_range(self, versions: RangeInclusive<QrVersion>) -> Self

Selects the inclusive Model 2 QR Code version range considered during encoding.

Source

pub const fn mask(self, mask: QrMask) -> Self

Forces an exact mask instead of selecting one automatically.

Source

pub const fn boost_error_correction(self, boost: bool) -> Self

Enables or disables upgrading the error correction level when the selected version has room.

Source

pub const fn fnc1(self, fnc1: Option<Fnc1>) -> Self

Sets the FNC1 interpretation applied to the complete symbol.

Source

pub fn encode_bytes( &self, data: impl AsRef<[u8]>, ) -> Result<Symbol, EncodeError>

Encodes raw bytes with globally optimized Numeric, Alphanumeric and Byte segments.

Source

pub fn encode_text(&self, text: impl AsRef<str>) -> Result<Symbol, EncodeError>

Encodes text with globally optimized character modes and ECI transitions.

Source

pub fn encode_to_qr_text<T: ToQRText + ?Sized>( &self, value: &T, ) -> Result<Symbol, EncodeError>

Encodes a value after converting it to its QR Code text representation.

Source

pub fn encode_segments( &self, segments: &[Segment], ) -> Result<Symbol, EncodeError>

Encodes explicit segments without changing their boundaries.

Source

pub fn encode_structured_append_bytes( &self, parts: &[&[u8]], ) -> Result<Vec<Symbol>, EncodeError>

Encodes caller-selected byte parts as one Structured Append sequence.

Source

pub fn encode_structured_append_text( &self, parts: &[&str], ) -> Result<Vec<Symbol>, EncodeError>

Encodes caller-selected text parts as one Structured Append sequence.

Source

pub fn encode_structured_append_segments( &self, parts: &[&[Segment]], ) -> Result<Vec<Symbol>, EncodeError>

Encodes caller-selected segment parts as one Structured Append sequence.

Source

pub fn encode_bytes_with_structured_append( &self, data: impl AsRef<[u8]>, ) -> Result<Vec<Symbol>, EncodeError>

Encodes bytes as one symbol or automatically splits them into at most 16 Structured Append symbols.

When the data fits one symbol, that lone symbol is returned without Structured Append metadata, because a single symbol needs no sequence header.

Source

pub fn encode_text_with_structured_append( &self, text: impl AsRef<str>, ) -> Result<Vec<Symbol>, EncodeError>

Encodes text as one symbol or automatically splits it into at most 16 Structured Append symbols.

When the text fits one symbol, that lone symbol is returned without Structured Append metadata, because a single symbol needs no sequence header.

Trait Implementations§

Source§

impl Clone for QrEncoder

Source§

fn clone(&self) -> QrEncoder

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for QrEncoder

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V