At 02:07 PM 5/3/01 -0700, you wrote: >At 11:14 AM 5/3/01 -0700, you wrote: >>I'm facing a situation on a Visor Prism where I have to draw characters >>in a user-specified color on an unknown color background. In fact, for >>all I know I'll be drawing chars across a multi-colored background or an >>image. I am NOT supposed to paint the entire rectanglar bitmap containing >>the char; only the bits that comprise the actual char itself. >> >>If I am drawing black chars, winOverlay mode and WinPaintChars() works fine. >> >>But if I am drawing white chars on a black background, I get into big >>trouble. >> >>Is there a single WinDrawMode that, combined with WinPaintChars(), will >>do what I need? I wrote a little test program to paint black chars on a >>white background and vice versa in every possible WinDrawMode, and I >>can't find one that works in both cases unless I screwed something up. >> >>If not, can anyone think of a workaround that would help, given my >>constraints? > >You can't do it with a single call to WinPaintChars(), you need to do two >calls: > >For 256 color (8-bit depth) mode: > >// erase the pixels of the text > >WinSetTextColor( 0 ); >WinSetBackColor( 255 ); >WinSetDrawMode( winErase ); >WinPaintChars( txt, x, y ); Oops, that should be: WinPaintChars( txt, StrLen(txt), x, y ), of course. -- Bill Kirby Electron Hut www.electronhut.com -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/tech/support/forums/
