16f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*
26f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org *   Copyright (C) 2003, International Business Machines
36f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org *   Corporation and others.  All Rights Reserved.
46f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */
56f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgvoid GDISurface::setFont(RenderingFontInstance *font)
66f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org{
76f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    GDIFontInstance *gFont = (GDIFontInstance *) font;
86f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
96f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    if (fCurrentFont != font) {
106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org        fCurrentFont = font;
116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org        SelectObject(fHdc, gFont->fFont);
126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    }
136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org}
146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgvoid GDISurface::drawGlyphs(RenderingFontInstance *font, const LEGlyphID *glyphs, le_int32 count, const le_int32 *dx,
166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    le_int32 x, le_int32 y, le_int32 width, le_int32 height)
176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org{
186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    RECT clip;
196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    clip.top    = 0;
216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    clip.left   = 0;
226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    clip.bottom = height;
236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    clip.right  = width;
246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    setFont(font);
266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org    ExtTextOut(fHdc, x, y - fAscent, ETO_CLIPPED | ETO_GLYPH_INDEX, &clip,
286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org        glyphs, count, (INT *) dx);
296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org}
306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org
31