ID2D1RenderTarget::DrawGlyphRun
次のパラメータを取ります:
D2D1_POINT_2F baselineOrigin,
__in CONST DWRITE_GLYPH_RUN *glyphRun,
__in ID2D1Brush *foregroundBrush,
DWRITE_MEASURING_MODE measuringMode /*= DWRITE_MEASURING_MODE_NATURAL */
DWRITE_GLYPH_RUNは
struct DWRITE_GLYPH_RUN
{
__notnull IDWriteFontFace* fontFace;
FLOAT fontEmSize;
UINT32 glyphCount;
__field_ecount(glyphCount) UINT16 const* glyphIndices;
__field_ecount_opt(glyphCount) FLOAT const* glyphAdvances;
__field_ecount_opt(glyphCount) DWRITE_GLYPH_OFFSET const* glyphOffsets;
BOOL isSideways;
UINT32 bidiLevel;
};
出力グリフを含む最小のrectを見つけようとしています。
これは私が持っているすべてのデータです。私は1つのポイントを持っていることに注意してください。これは、を使用して、およびからbaselineOrigin
幅を計算できる可能性があります。問題は、高さをどのように決定するかです。glyphAdvances
glyphOffsets
DWRITE_GLYPH_RUN
ありがとう。