UNIFONTOBJ_GetInfo(GETINFO_GLYPHSTRING) Function Does Not Work in the IPrintOemUni::DownloadCharGlyph Method (306336)
The information in this article applies to:
- Microsoft Windows 2000 Server SP1
- Microsoft Windows 2000 Server SP2
- Microsoft Windows 2000 Advanced Server SP1
- Microsoft Windows 2000 Advanced Server SP2
- Microsoft Windows 2000 Professional SP1
- Microsoft Windows 2000 Professional SP2
This article was previously published under Q306336 SYMPTOMS
When you implement the IPrintOemUni::DownloadCharGlyph method to send a character glyph for a specified soft font to the printer in your rendering plug-in for Unidrv, the call to the UNIFONTOBJ_GetInfo(GETINFO_GLYPHSTRING) function to obtain the glyph image may not work.
CAUSE
This behavior is by design.
RESOLUTION
To resolve this problem, do not call the UNIFONTOBJ_GetInfo(GETINFO_GLYPHSTRING) function in DownloadCharGlyph. Instead, call the UNIFONTOBJ_GetInfo(GETINFO_GLYPHSTRING) function in OutputCharStr after you mask the high-order bits so that you can retrieve the Unicode value of the glyph.
NOTE: If SendFontCmd is not implemented (that is, if GetImplementedMethod returns E_NOTIMPL), then OutputCharStr stops responding (hangs) if you use a device font. OutputCharStr does not hang because of the call to UNIFONTOBJ_GetInfo; a simple implementation of OutputCharStr without SendFontCmd implemented causes the hang for device fonts.
If GetImplementedMethod returns S_OK for SendFontCmd, and SendFontCmd returns E_NOTIMPL (as it is done in the Oemuni DDK sample), then there is no hang.
STATUSMicrosoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.
Modification Type: | Major | Last Reviewed: | 12/4/2003 |
---|
Keywords: | kbbug kbenv kbfix kbprint KB306336 |
---|
|