Question about BitBlit and half tone forms...

Raab, Andreas Andreas.Raab at disney.com
Sat Mar 31 01:38:20 UTC 2001


Rick,

> OK, so I don't understand what a halftoneForm is...

The halftone form is basically a mask used during the pixel transfer. It is
used to mask out certain pixels (or color components) and because this can
be used to achieve halftoning it's called a halftoneForm. BTW, I don't
really understand what you're trying to achieve with the halftone form in
your code (e.g., I don't understand what you think a halftone form is ;-) so
perhaps you can explain what you were trying to do?!

> If you think that the two forms are interpreted identically 
> during the blt...
> Ummm...  They don't blit the same on my system...

You're right. It seems that there's some special code in BitBlt that
interprets a form in the halftoneForm as "Old-style 32xN monochrome halftone
Forms" which explains the effect you're seeing. It uses the height of the
form (which is why your first variant works) but not the width (nor the
depth) of it. And it doesn't fail if the input is not a 32xN monochrome
form. The "modern style" halftoneForm is really any word array (Bitmap)
which is interpreted as mentioned before (e.g., (32/depth) @ bits size).

Cheers,
  - Andreas





More information about the Squeak-dev mailing list