Hi Stef, That sounds good. I will be interested to see the new Pretty Printer. Is any of it public yet? And I'm pleased that Shout is still working well for you, Cheers, Andy
----- Original Message ----- From: "stéphane ducasse" ducasse@iam.unibe.ch Newsgroups: gmane.comp.lang.smalltalk.squeak.general Sent: Wednesday, March 22, 2006 7:41 AM Subject: Re: Henrik antialising
Thanks andy
this is really good to get such a kind of news. I'm really impressed. I should learn and try to do something too.
One guy is working on Gutenberg a new pretty printer in VW. As soon as it will be working and tests are green I will port it to squeak (would be cool with shout). I imagine typing and seeing the code colored and put at the right place (we can dream).
PS: Shout is working so well with the students (thanks thanks thanks).
On 21 mars 06, at 12:24, Andrew Tween wrote:
Hi Stef, Sorry about that. I'll check my e-mail settings.
Here is an update on the sub-pixel anti-aliasing work I have been doing...
I ported some of Henrik's sub-pixel rendering code to 3.9. Enough to get the fonts that he had produced to load, and display. But, since his work was unfinished, there are some things which don't work. (This is not a criticism of Henrik, the comments in his code indicate that he was intending to work on these things). Specifically, from Henrik's project notes... "No support for synthetic variants (emboldened, underline etc.), nor colored type. No bg color other than white in paragraphs (but in QuickPrint) Doesn't work properly in other than 32 bit display depth (for Squeak) because of BitBlt limitations. "
The lack of support for coloured text means that it doesn't work with Shout. I am extremely reluctant to release/support 2 packages that don't work with each other.
The production of the stretched character glyphs, in Henrik's code, relied on the Freetype library. Other people are working on interfacing to Freetype (the Sophie project, for example), and I don't want to duplicate their efforts by 'doing my own thing'.
For the reason's above, I have started from a blank sheet, with these goals. 1. Must work with, or without, Freetype. (i.e. work with exisiting TTF support) 2. Must support any foreground/background colour combination (including Transparency). 3. Should work with any display depth (or at least with >= 8 bit) 4. Would be nice to also fix the advance width problem (enable glyphs to overlap) 5. Awareness of any patent issues. I don't know what we can/should do about those patent issues, but at least we can make informed decisions.
I have made some progress on this...
I have created a new BitBlt mode that has a separate alpha
channel for each rgb subcomponent. This enables Transparency/Translucency, and means that there is no need to cache separate glyphs per foreground colour. At the moment this only works with 32 bit display depth, and requires a patched VM.
I can create stretched glyphs using the existing Balloon /TTF
rendering. These are still blurry (mainly in the vertical direction. This is due to no hinting/grid fitting). It is also very slow - I haven't improved the TTCFont caching, so the caches keep getting rebuilt.
I can fake the Freetype support by using Windows API to create
stretched/hinted/grid fitted glyphs. This works well, text is very clear, but there are issues with some italic glyphs becoming distorted. I think this is a bug in the Windows API.
I have researched the patents that apply in this area. So far I have uncovered 16 US, and 1 worldwide patent held/ applied for by Microsoft.
So, work is progressing, as time allows, but time is in short supply at the moment.
I am deliberately hesitating before sharing any of this stuff, mainly because of the patent issues, but also because I want to get it working with Freetype first.
More later... Cheers, Andy
----- Original Message ----- From: "stéphane ducasse" ducasse@iam.unibe.ch To: "The general-purpose Squeak developers list" squeak-dev@lists.squeakfoundation.org Sent: Tuesday, March 21, 2006 7:43 AM Subject: Henrik antialising
Hi guys
did one of you hear about andy tween the cool father of SHOUT. Way back he said that he was willing to harvest Henrik antialiasing font rendering. I tried to contact him but got no reply (may be a spam filter problem).
Stef