If a device driver sets the TC_TT_ABLE value in the dpCaps1 member or the TC_RA_ABLE value in the dpText member of the GDIINFO structure, GDI handles each EUDC character as a DBCS character and sets the appropriate bitmap data in the physical font. The driver does not need to handle EUDC characters separately.
If a device driver does not set the TC_TT_ABLE and TC_RA_ABLE values, GDI processes EUDC characters by passing them to either the driver's raster or text function depending on whether the driver sets the FEC_EUDC_ABLE value in the dpCapsFE member of the GDIINFO structure.
Device capability | With TC_RA_ABLE or TC_TT_ABLE | Without TC_RA_ABLE and TC_TT_ABLE *1 | ||
---|---|---|---|---|
Font Type | Standard characters | EUDC | Standard characters | EUDC |
DBCS GDI font | ExtTextOut (FONTINFO) | BitBlt | N/A | N/A |
DBCS TrueType font | ExtTextOut (FONTINFO) | BitBlt | ExtTextOut (Engine DDI) | BitBlt *2 |
ExtTextOut *3 (Engine DDI) | ||||
WIFE font | ExtTextOut (FONTINFO) | BitBlt | BitBlt | BitBlt |
DBCS device font | N/A | N/A | ExtTextOut | BitBlt *2 |
ExtTextOut *3 (Engine DDI) | ||||
*1 For an engine realized DBCS TrueType font, an EUDC font belonging to the DBCS TrueType font will be selected. For all device fonts, an EUDC font belonging to System font will be selected.
*2 If FEC_EUDC_ABLE of dpCapsFE isn't set, FE GDI calls driver BitBlt for EUDC characters. Note: FE Windows 3.1 drivers which can handle glyph indices will work under Windows 3.1 compatible layer. Only raster functions will be called for EUDC characters. *3 If FEC_EUDC_ABLE of dpCapsFE is set, FE GDI calls driver's ExtTextOut with glyph indices. |