: I'm using microwindows version 0.91 with nano-X and freetype2 fonts. : When I run my application with portrait none, it works perfectly. When I try : to run it with the portrait left, nano-X draws everything correctly, even : the images, but the texts don't appear. I tried to debug the nano-X, but I : didn't find where the error happens.
I'm not looking at the source code now, but the issue has to do with FT2 using the psd->DrawArea entry point to the screen driver, and these get replaced with different driver entry points (allowing translated coordinates) using the drivers/left_portrait.c and drivers/right_portrait.c source modules. Translating x,y values for lines and points is easy, but for fast blits is harder. The psd->Blit entry point has a conversion function, but the psd->DrawArea entry point was contributed and the work was not finalized. The blit will need to take place using fully translated x and y values. This is where it gets complicated: My original design always kept images in hardware scan format, (regardless of portrait orientation) allowing for fast blits in normal and portrait modes. Otherwise, any portrait blit would have to draw pixel-for-pixel translating source and destination, which would be VERY slow. Look at the psd->Blit replacement stub in the portrait modules above. You'll essentially need to do the same thing for the psd->DrawArea entry point, and your text should display. In a later version of Microwindows, we should combine the blit and drawarea entry points. The reason the drawarea entry point was contributed is that it supports alpha blending and is faster than my original blit work. This was because I was trying to keep writing a new screen driver simple for new systems, which of course is a simplicity/speed tradeoff. Hope this makes sense. BTW, Freetype 1 doesn't use the drawarea entry point, but instead uses the older blit draw, so that should work for you if you can't get the above working. Regards, Greg --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]