pub trait IDWriteTextAnalyzer1_Impl: Sized + IDWriteTextAnalyzer_Impl {
    // Required methods
    fn ApplyCharacterSpacing(
        &self,
        leadingspacing: f32,
        trailingspacing: f32,
        minimumadvancewidth: f32,
        textlength: u32,
        glyphcount: u32,
        clustermap: *const u16,
        glyphadvances: *const f32,
        glyphoffsets: *const DWRITE_GLYPH_OFFSET,
        glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES,
        modifiedglyphadvances: *mut f32,
        modifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET
    ) -> Result<()>;
    fn GetBaseline(
        &self,
        fontface: Option<&IDWriteFontFace>,
        baseline: DWRITE_BASELINE,
        isvertical: BOOL,
        issimulationallowed: BOOL,
        scriptanalysis: &DWRITE_SCRIPT_ANALYSIS,
        localename: &PCWSTR,
        baselinecoordinate: *mut i32,
        exists: *mut BOOL
    ) -> Result<()>;
    fn AnalyzeVerticalGlyphOrientation(
        &self,
        analysissource: Option<&IDWriteTextAnalysisSource1>,
        textposition: u32,
        textlength: u32,
        analysissink: Option<&IDWriteTextAnalysisSink1>
    ) -> Result<()>;
    fn GetGlyphOrientationTransform(
        &self,
        glyphorientationangle: DWRITE_GLYPH_ORIENTATION_ANGLE,
        issideways: BOOL,
        transform: *mut DWRITE_MATRIX
    ) -> Result<()>;
    fn GetScriptProperties(
        &self,
        scriptanalysis: &DWRITE_SCRIPT_ANALYSIS,
        scriptproperties: *mut DWRITE_SCRIPT_PROPERTIES
    ) -> Result<()>;
    fn GetTextComplexity(
        &self,
        textstring: &PCWSTR,
        textlength: u32,
        fontface: Option<&IDWriteFontFace>,
        istextsimple: *mut BOOL,
        textlengthread: *mut u32,
        glyphindices: *mut u16
    ) -> Result<()>;
    fn GetJustificationOpportunities(
        &self,
        fontface: Option<&IDWriteFontFace>,
        fontemsize: f32,
        scriptanalysis: &DWRITE_SCRIPT_ANALYSIS,
        textlength: u32,
        glyphcount: u32,
        textstring: &PCWSTR,
        clustermap: *const u16,
        glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES,
        justificationopportunities: *mut DWRITE_JUSTIFICATION_OPPORTUNITY
    ) -> Result<()>;
    fn JustifyGlyphAdvances(
        &self,
        linewidth: f32,
        glyphcount: u32,
        justificationopportunities: *const DWRITE_JUSTIFICATION_OPPORTUNITY,
        glyphadvances: *const f32,
        glyphoffsets: *const DWRITE_GLYPH_OFFSET,
        justifiedglyphadvances: *mut f32,
        justifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET
    ) -> Result<()>;
    fn GetJustifiedGlyphs(
        &self,
        fontface: Option<&IDWriteFontFace>,
        fontemsize: f32,
        scriptanalysis: &DWRITE_SCRIPT_ANALYSIS,
        textlength: u32,
        glyphcount: u32,
        maxglyphcount: u32,
        clustermap: *const u16,
        glyphindices: *const u16,
        glyphadvances: *const f32,
        justifiedglyphadvances: *const f32,
        justifiedglyphoffsets: *const DWRITE_GLYPH_OFFSET,
        glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES,
        actualglyphcount: *mut u32,
        modifiedclustermap: *mut u16,
        modifiedglyphindices: *mut u16,
        modifiedglyphadvances: *mut f32,
        modifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET
    ) -> Result<()>;
}

Required Methods§

fn ApplyCharacterSpacing( &self, leadingspacing: f32, trailingspacing: f32, minimumadvancewidth: f32, textlength: u32, glyphcount: u32, clustermap: *const u16, glyphadvances: *const f32, glyphoffsets: *const DWRITE_GLYPH_OFFSET, glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES, modifiedglyphadvances: *mut f32, modifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET ) -> Result<()>

fn GetBaseline( &self, fontface: Option<&IDWriteFontFace>, baseline: DWRITE_BASELINE, isvertical: BOOL, issimulationallowed: BOOL, scriptanalysis: &DWRITE_SCRIPT_ANALYSIS, localename: &PCWSTR, baselinecoordinate: *mut i32, exists: *mut BOOL ) -> Result<()>

fn AnalyzeVerticalGlyphOrientation( &self, analysissource: Option<&IDWriteTextAnalysisSource1>, textposition: u32, textlength: u32, analysissink: Option<&IDWriteTextAnalysisSink1> ) -> Result<()>

fn GetGlyphOrientationTransform( &self, glyphorientationangle: DWRITE_GLYPH_ORIENTATION_ANGLE, issideways: BOOL, transform: *mut DWRITE_MATRIX ) -> Result<()>

fn GetScriptProperties( &self, scriptanalysis: &DWRITE_SCRIPT_ANALYSIS, scriptproperties: *mut DWRITE_SCRIPT_PROPERTIES ) -> Result<()>

fn GetTextComplexity( &self, textstring: &PCWSTR, textlength: u32, fontface: Option<&IDWriteFontFace>, istextsimple: *mut BOOL, textlengthread: *mut u32, glyphindices: *mut u16 ) -> Result<()>

fn GetJustificationOpportunities( &self, fontface: Option<&IDWriteFontFace>, fontemsize: f32, scriptanalysis: &DWRITE_SCRIPT_ANALYSIS, textlength: u32, glyphcount: u32, textstring: &PCWSTR, clustermap: *const u16, glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES, justificationopportunities: *mut DWRITE_JUSTIFICATION_OPPORTUNITY ) -> Result<()>

fn JustifyGlyphAdvances( &self, linewidth: f32, glyphcount: u32, justificationopportunities: *const DWRITE_JUSTIFICATION_OPPORTUNITY, glyphadvances: *const f32, glyphoffsets: *const DWRITE_GLYPH_OFFSET, justifiedglyphadvances: *mut f32, justifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET ) -> Result<()>

fn GetJustifiedGlyphs( &self, fontface: Option<&IDWriteFontFace>, fontemsize: f32, scriptanalysis: &DWRITE_SCRIPT_ANALYSIS, textlength: u32, glyphcount: u32, maxglyphcount: u32, clustermap: *const u16, glyphindices: *const u16, glyphadvances: *const f32, justifiedglyphadvances: *const f32, justifiedglyphoffsets: *const DWRITE_GLYPH_OFFSET, glyphproperties: *const DWRITE_SHAPING_GLYPH_PROPERTIES, actualglyphcount: *mut u32, modifiedclustermap: *mut u16, modifiedglyphindices: *mut u16, modifiedglyphadvances: *mut f32, modifiedglyphoffsets: *mut DWRITE_GLYPH_OFFSET ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§