[squeak-dev] Re: [Ann] Enhanced StrikeFonts (antiAliasing,
subPixel AA)
Juan Vuletich
juan at jvuletich.org
Wed Aug 5 16:01:56 UTC 2009
Andreas Raab wrote:
> Andreas Raab wrote:
>>> Note #3. The second pass stuff is done in GrafPort, but not in
>>> BitBlt. Do you think it is better to move it up to BitBlt?
>>
>> BitBlt, since it's used directly from StrikeFont and not via Canvas.
>
> Or that's what he thought. It turns out this doesn't work since it
> breaks WarpBlt (which relies on the exact layout of BitBlt). I suppose
> *that* is the reason why GrafPort got invented to begin with (it
> always felt strange to me since Morphic had both Canvas and BitBlt and
> should be happy inbetween the two - but if adding state to BB isn't an
> option, that would explain GrafPort).
>
> In any case, I pushed the state vars back down to GrafPort (renaming
> them in the process to avoid Monticello madness) and hopefully
> everything is fine now. You'll have to use GrafPort to get two-pass
> rendering but it won't break if you use BitBlt.
I managed to add the behavior back to BitBlt without adding any instance
variables. It is a bit hacky, as
#displayString:from:to:at:strikeFont:kern: needs to assume that if rule
is rgbMul, a second pass is in order. I prefer this, as it would give
proper rendering when not using a GrafPort / MorphicCanvas.
If you don't object, I'll upload this to the trunk later today.
BTW, as I said in another message, once we fix rgbMul in BitBlt, the
second pass will only be needed for colored text.
Cheers,
Juan Vuletich
>
> Cheers,
> - Andreas
More information about the Squeak-dev
mailing list
|