Gregor Schneider grschneider@gmail.com wrote:
Concerning using an internal format: let's assume we got three 8bpp surfaces (source, destination, pattern), which are quite big pending for a raster operation. You would convert these three to another format like 32bpp, process them and convert back?
No, of course not, Gregor,
You're absolutely right about the 8bpp S/D/P situation. It would be a terrible idea to convert such a simple format to another for a tertiary rop. I think I was thinking about an internal graphic structure for the display context .. ;-) Accumulate all rops to an 32bit DIB internally, unless the physical device is low bpp. Come to think of it, almost anything but RLE is suitable internally, depending on the output color requirements. The graphics primitives for lines, ellipses, and so on can be small enough to separate a few specialized implementations for different bit depths. I guess that's what You do ? (I didn't look yet). Branching for different bit formats in the primitives would be a bad idea though.. Wouldn't You agree ?
Best Regards // Love
PS. I have a slice-line routine that's faster than an oiled lightning, and it's really small enough that it'd be worth replicating the code for different bit depths. Let me know if you're interested.