android_mt6572_jiabo/external/icu/icu4c/source/samples/layout/Surface.cpp
2025-09-05 16:56:03 +08:00

30 lines
764 B
C++

/*
* Copyright (C) 2003, International Business Machines
* Corporation and others. All Rights Reserved.
*/
void GDISurface::setFont(RenderingFontInstance *font)
{
GDIFontInstance *gFont = (GDIFontInstance *) font;
if (fCurrentFont != font) {
fCurrentFont = font;
SelectObject(fHdc, gFont->fFont);
}
}
void GDISurface::drawGlyphs(RenderingFontInstance *font, const LEGlyphID *glyphs, le_int32 count, const le_int32 *dx,
le_int32 x, le_int32 y, le_int32 width, le_int32 height)
{
RECT clip;
clip.top = 0;
clip.left = 0;
clip.bottom = height;
clip.right = width;
setFont(font);
ExtTextOut(fHdc, x, y - fAscent, ETO_CLIPPED | ETO_GLYPH_INDEX, &clip,
glyphs, count, (INT *) dx);
}