Struct kas_core::theme::RasterConfig
source · pub struct RasterConfig {
pub mode: u8,
pub scale_steps: u8,
pub subpixel_threshold: u8,
pub subpixel_steps: u8,
}Expand description
Font raster settings
These are not used by the theme, but passed through to the rendering backend.
Fields§
§mode: u8§scale_steps: u8Scale multiplier for fixed-precision
This should be an integer n >= 1, e.g. n = 4 provides four sub-pixel
steps of precision. It is also required that n * h < (1 << 24) where
h is the text height in pixels.
subpixel_threshold: u8Subpixel positioning threshold
Text with height h less than this threshold will use sub-pixel
positioning, which should make letter spacing more accurate for small
fonts (though exact behaviour depends on the font; it may be worse).
This may make rendering worse by breaking pixel alignment.
Note: this feature may not be available, depending on the backend and the mode.
See also sub-pixel positioning steps.
subpixel_steps: u8Subpixel steps
The number of sub-pixel positioning steps to use. 1 is the minimum and equivalent to no sub-pixel positioning. 16 is the maximum.
Note that since this applies to horizontal and vertical positioning, the maximum number of rastered glyphs is multiplied by the square of this value, though this maxmimum may not be reached in practice. Since this feature is usually only used for small fonts this likely acceptable.
Trait Implementations§
source§impl Clone for RasterConfig
impl Clone for RasterConfig
source§fn clone(&self) -> RasterConfig
fn clone(&self) -> RasterConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for RasterConfig
impl Debug for RasterConfig
source§impl Default for RasterConfig
impl Default for RasterConfig
source§impl<'de> Deserialize<'de> for RasterConfig
impl<'de> Deserialize<'de> for RasterConfig
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl PartialEq for RasterConfig
impl PartialEq for RasterConfig
source§fn eq(&self, other: &RasterConfig) -> bool
fn eq(&self, other: &RasterConfig) -> bool
self and other values to be equal, and is used
by ==.source§impl Serialize for RasterConfig
impl Serialize for RasterConfig
impl Eq for RasterConfig
impl StructuralEq for RasterConfig
impl StructuralPartialEq for RasterConfig
Auto Trait Implementations§
impl RefUnwindSafe for RasterConfig
impl Send for RasterConfig
impl Sync for RasterConfig
impl Unpin for RasterConfig
impl UnwindSafe for RasterConfig
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
source§impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
source§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
source§fn cast_approx(self) -> T
fn cast_approx(self) -> T
source§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
source§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
source§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
source§fn cast_floor(self) -> T
fn cast_floor(self) -> T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.