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 |
Am 21.03.2006 um 08:43 schrieb stéphane ducasse: > 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. Don't know. But for Sophie I revived Ned's Freetype2 Plugin: http://source.impara.de/freetype.html The integration with regular Squeak fonts is a bit immature (Sophie uses its own font management) but it should be a start. What would be cool is if someone would take this and make a higher- quality renderer for the TTCFonts - if the plugin is available, render nicely sub-pixel antialiased glyphs with Freetype, otherwise fall back to the currently used blurry BalloonEngine rendering. - Bert - |
In reply to this post by stéphane ducasse-2
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" <[hidden email]> To: "The general-purpose Squeak developers list" <[hidden email]> 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 > > |
In reply to this post by Bert Freudenberg-3
Hi Bert,
I would very much like to adapt my sub-pixel work to use your Freetype2 plugin. How should I proceed with installing it? In particular... Which image should I use, 3.7, 3.8, 3.9, any particular configuration? Which packages should I load? I have tried loading stuff, but get various errors, for example... When I try to load Freetype-Base-JMM.40.mcz into latest 3.9 I get... This package depends on the following classes: CTransformCanvas Is there some other stuff I need first? How would I then set things up for building a VM & plugin for Windows? Do I need to obtain the source for a specific version of Freetype2 ? (When I built a custom VM for my new BitBlt mode, I found that I had to do this from 3.7 Full. 3.8 and later caused errors, but I didn't have time to investigate) Any help you can give me is much appreciated. Cheers, Andy ----- Original Message ----- From: "Bert Freudenberg" <[hidden email]> Newsgroups: gmane.comp.lang.smalltalk.squeak.general Sent: Tuesday, March 21, 2006 9:41 AM Subject: Re: Henrik antialising Am 21.03.2006 um 08:43 schrieb stéphane ducasse: > 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. Don't know. But for Sophie I revived Ned's Freetype2 Plugin: http://source.impara.de/freetype.html The integration with regular Squeak fonts is a bit immature (Sophie uses its own font management) but it should be a start. What would be cool is if someone would take this and make a higher- quality renderer for the TTCFonts - if the plugin is available, render nicely sub-pixel antialiased glyphs with Freetype, otherwise fall back to the currently used blurry BalloonEngine rendering. - Bert - |
Am 21.03.2006 um 14:51 schrieb Andrew Tween: > Hi Bert, > I would very much like to adapt my sub-pixel work to use your > Freetype2 > plugin. > > How should I proceed with installing it? In particular... > > Which image should I use, 3.7, 3.8, 3.9, any particular configuration? Only tested on 3.8 > Which packages should I load? compiling the plugin: Freetype-Base + Freetype-Plugin using / testing: Freetype-Base + Freetype-Fonts installing sample fonts: Freetype-Vera (depends on Freetype-Fonts) There are two config maps at the bottom of http://source.impara.de/ freetype/ but they do not point to the latest versions. > I have tried loading stuff, but get various errors, for example... > When I try to load Freetype-Base-JMM.40.mcz into latest 3.9 > I get... > This package depends on the following classes: > CTransformCanvas > > Is there some other stuff I need first? Uggh, that stuff should not be in that package ... seems to have been slipped in by some Sophie developer (CTransformCanvas is used by Tweak). You should be able to ignore the warning and load the package anyways, no? > How would I then set things up for building a VM & plugin for Windows? > Do I need to obtain the source for a specific version of > Freetype2 ? > (When I built a custom VM for my new BitBlt mode, I found that > I had to > do this from 3.7 Full. > 3.8 and later caused errors, but I didn't have time to > investigate) Hmm, not sure about the Windows plugin ... someone compiled it for Sophie, so it works, somehow ;-) If you do it as external plugin it shouldn't matter if it is 3.7 or 3.8, so use whatever works for you. - Bert - > ----- Original Message ----- > From: "Bert Freudenberg" <[hidden email]> > Newsgroups: gmane.comp.lang.smalltalk.squeak.general > Sent: Tuesday, March 21, 2006 9:41 AM > Subject: Re: Henrik antialising > > > > Am 21.03.2006 um 08:43 schrieb stéphane ducasse: > >> 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. > > Don't know. But for Sophie I revived Ned's Freetype2 Plugin: > > http://source.impara.de/freetype.html > > The integration with regular Squeak fonts is a bit immature (Sophie > uses its own font management) but it should be a start. > > What would be cool is if someone would take this and make a higher- > quality renderer for the TTCFonts - if the plugin is available, > render nicely sub-pixel antialiased glyphs with Freetype, otherwise > fall back to the currently used blurry BalloonEngine rendering. > > - Bert - > > |
On 21-Mar-06, at 7:44 AM, Bert Freudenberg wrote: > >> I have tried loading stuff, but get various errors, for >> example... >> When I try to load Freetype-Base-JMM.40.mcz into latest >> 3.9 I get... >> This package depends on the following classes: >> CTransformCanvas >> >> Is there some other stuff I need first? > > Uggh, that stuff should not be in that package ... seems to have > been slipped in by some Sophie developer (CTransformCanvas is used > by Tweak). > > You should be able to ignore the warning and load the package > anyways, no? Ya, that is in there because it alters CTransformCanvas so that it deals with FT2 Font rendering, of course that's needed in Sophie. > >> How would I then set things up for building a VM & plugin for >> Windows? >> Do I need to obtain the source for a specific version of >> Freetype2 ? >> (When I built a custom VM for my new BitBlt mode, I found that >> I had to >> do this from 3.7 Full. >> 3.8 and later caused errors, but I didn't have time to >> investigate) > > Hmm, not sure about the Windows plugin ... someone compiled it for > Sophie, so it works, somehow ;-) > > If you do it as external plugin it shouldn't matter if it is 3.7 or > 3.8, so use whatever works for you. Beware that newer plugins compiled with newer VM interface files with newer major/minor version numbers won't load with older VM because the version numbers in the plugins are higher than in the VM. This feature is there to prevent disaster, but as a side effect causes problems because a plugin won't load on your 3.6 VM and you don't know why... -- ======================================================================== === John M. McIntosh <[hidden email]> 1-800-477-2659 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ======================================================================== === |
In reply to this post by Bert Freudenberg-3
Thanks.
I am making some progress. I have loaded the Freetype-Base and Freetype-plugin packages into my 3.7 full image. Using VMMaker I am building a VM and external FT2Plugin. (the VM build works ok without theFT2Plugin so I think it is configured correctly). The code gets generated ok, I have a bunch of FTPlugin files (.c .exp .def lib .o ) in the FT2Plugin directory. I have downloaded and compiled Freetype 2.1.10 . I have put the freetype2 files into cross\plugins\FT2Plugin so i have this structure... cross \plugins \FT2Plugin freetype.lib freetype.lib.o ft2build.h \freetype a whole bunch of .h files (freetype.h ... ttunpat.h) some folders (\cache \config \internal) These files get copied over into the win32\plugins\FT2Plugin When I run build.bat I get this error message.... --- make[1]: Entering directory `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugi ns/FT2Plugin' dlltool \ --output-def ./FT2Plugin.def \ --output-exp ./FT2Plugin.exp \ --output-lib ./FT2Plugin.lib \ FT2Plugin.o dllwrap -mwindows \ -def ./FT2Plugin.def \ -o ./FT2Plugin.dll \ -lddraw -ldinput -lopengl32 -lwsock32 -lcomdlg32 -lole32 -lwinmm -lu ser3 2 -lgdi32 -lkernel32 -lcrtdll \ ./FT2Plugin.exp \ FT2Plugin.o FT2Plugin.o: In function `primitiveDoneFace': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :321 : undefined reference to `FT_Done_Face' FT2Plugin.o: In function `primitiveGetCharIndex': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :405 : undefined reference to `FT_Get_Char_Index' FT2Plugin.o: In function `primitiveGetFaceGlyphName': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :525 : undefined reference to `FT_Get_Glyph_Name' FT2Plugin.o: In function `primitiveLoadCharacter': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :583 : undefined reference to `FT_Load_Char' FT2Plugin.o: In function `primitiveLoadGlyph': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :720 : undefined reference to `FT_Load_Glyph' FT2Plugin.o: In function `primitiveNewFaceFromFileAndIndex': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :849 : undefined reference to `sqFilenameFromString' //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :851 : undefined reference to `FT_New_Face' FT2Plugin.o: In function `primitiveRenderGlyphIntoForm': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :893 : undefined reference to `FT_Outline_Get_Bitmap' FT2Plugin.o: In function `primitiveSetFaceCharMap': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :941 : undefined reference to `FT_Select_Charmap' FT2Plugin.o: In function `primitiveSetPixelSizes': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :973 : undefined reference to `FT_Set_Pixel_Sizes' FT2Plugin.o: In function `primitiveSetTransform': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :101 0: undefined reference to `FT_Set_Transform' FT2Plugin.o: In function `primitiveVersion': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :103 3: undefined reference to `FT_Library_Version' FT2Plugin.o: In function `initialiseModule': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :289 : undefined reference to `FT_Init_FreeType' FT2Plugin.o: In function `shutdownModule': //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/FT2Plugin.c :106 3: undefined reference to `FT_Done_FreeType' dllwrap: gcc exited with status 1 make[1]: *** [makedll] Error 1 make[1]: Leaving directory `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugin s/FT2Plugin' make: *** [FT2Plugin.dll] Error 2 --- I think I may have the wrong freetype files in the wrong place. Do you know what I am doing wrong? Cheers, Andy ----- Original Message ----- From: "Bert Freudenberg" <[hidden email]> Newsgroups: gmane.comp.lang.smalltalk.squeak.general Sent: Tuesday, March 21, 2006 3:44 PM Subject: Re: Henrik antialising Am 21.03.2006 um 14:51 schrieb Andrew Tween: > Hi Bert, > I would very much like to adapt my sub-pixel work to use your > Freetype2 > plugin. > > How should I proceed with installing it? In particular... > > Which image should I use, 3.7, 3.8, 3.9, any particular configuration? Only tested on 3.8 > Which packages should I load? compiling the plugin: Freetype-Base + Freetype-Plugin using / testing: Freetype-Base + Freetype-Fonts installing sample fonts: Freetype-Vera (depends on Freetype-Fonts) There are two config maps at the bottom of http://source.impara.de/ freetype/ but they do not point to the latest versions. > I have tried loading stuff, but get various errors, for example... > When I try to load Freetype-Base-JMM.40.mcz into latest 3.9 > I get... > This package depends on the following classes: > CTransformCanvas > > Is there some other stuff I need first? Uggh, that stuff should not be in that package ... seems to have been slipped in by some Sophie developer (CTransformCanvas is used by Tweak). You should be able to ignore the warning and load the package anyways, no? > How would I then set things up for building a VM & plugin for Windows? > Do I need to obtain the source for a specific version of > Freetype2 ? > (When I built a custom VM for my new BitBlt mode, I found that > I had to > do this from 3.7 Full. > 3.8 and later caused errors, but I didn't have time to > investigate) Hmm, not sure about the Windows plugin ... someone compiled it for Sophie, so it works, somehow ;-) If you do it as external plugin it shouldn't matter if it is 3.7 or 3.8, so use whatever works for you. - Bert - > ----- Original Message ----- > From: "Bert Freudenberg" <[hidden email]> > Newsgroups: gmane.comp.lang.smalltalk.squeak.general > Sent: Tuesday, March 21, 2006 9:41 AM > Subject: Re: Henrik antialising > > > > Am 21.03.2006 um 08:43 schrieb stéphane ducasse: > >> 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. > > Don't know. But for Sophie I revived Ned's Freetype2 Plugin: > > http://source.impara.de/freetype.html > > The integration with regular Squeak fonts is a bit immature (Sophie > uses its own font management) but it should be a start. > > What would be cool is if someone would take this and make a higher- > quality renderer for the TTCFonts - if the plugin is available, > render nicely sub-pixel antialiased glyphs with Freetype, otherwise > fall back to the currently used blurry BalloonEngine rendering. > > - Bert - > > |
Those are the FreeType api entry points, you need to ensure the
linker can find the libfreetype.a, likely you need a -lfreetype on your unix linker cmd line. Can't speak for windows at this point. I will note on OS-X I downloaded and compiled freetype-2.1.10 then built it for PPC and MacIntel then linked them into a universal binary for the FreeType2 plugin for Sophie. Although you can link as weak references and have the entry points resolved at run time this only works if the OS-X user has installed X-11 on his machine, an optional choice. On 21-Mar-06, at 11:10 AM, Andrew Tween wrote: > : undefined reference to `FT_Init_FreeType' > FT2Plugin.o: In function `shutdownModule': > //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/ > FT2Plugin.c > :106 > 3: undefined reference to `FT_Done_FreeType' > dllwrap: gcc exited with status 1 > make[1]: *** [makedll] Error 1 > make[1]: Leaving directory > `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugin > s/FT2Plugin' > make: *** [FT2Plugin.dll] Error 2 > > --- > I think I may have the wrong freetype files in the wrong place. > Do you know what I am doing wrong? -- ======================================================================== === John M. McIntosh <[hidden email]> 1-800-477-2659 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ======================================================================== === |
In reply to this post by Andrew Tween
Am 21.03.2006 um 20:10 schrieb Andrew Tween:
> make[1]: Entering directory > `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugi > ns/FT2Plugin' > dlltool \ > --output-def ./FT2Plugin.def \ > --output-exp ./FT2Plugin.exp \ > --output-lib ./FT2Plugin.lib \ > FT2Plugin.o > dllwrap -mwindows \ > -def ./FT2Plugin.def \ > -o ./FT2Plugin.dll \ > -lddraw -ldinput -lopengl32 -lwsock32 -lcomdlg32 -lole32 - > lwinmm -luser32 -lgdi32 -lkernel32 -lcrtdll \ > ./FT2Plugin.exp \ > FT2Plugin.o > FT2Plugin.o: In function `primitiveDoneFace': > //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/ > FT2Plugin.c > :321 > : undefined reference to `FT_Done_Face' > --- > I think I may have the wrong freetype files in the wrong place. > Do you know what I am doing wrong? I have no idea about compiling on Windows ... but I'd suspect you'ld have to tell the linker to link with the freetype lib, like "- lfreetype" or the like. - Bert - |
In reply to this post by johnmci
After much fiddling about, I have now compiled a VM with an internal
FT2Plugin. (I had to rename freetype.a to libfreetype.a and put it in the compiler's lib folder. Then add a -lfreetype to the make . Then copy the definition of sqFilenameFromString from sq,h into the top of sqPlatformSpecific.h ) Many thanks for everyone's help. I am now trying to install Freetype-Fonts-JMM.8.mcz and I get this Warning... This package depends on the following classes: VectorFont You must resolve these dependencies before you will be able to load these definitions: FreetypeFont FreetypeFont class>>colorMapForegroundColor:backgroundColor: etc.... If I proceed then there are no further errors, but the FreetypeFont class is absent. Do you know where the VectorFont can be installed from? Cheers, Andy ----- Original Message ----- From: "John M McIntosh" <[hidden email]> Newsgroups: gmane.comp.lang.smalltalk.squeak.general Sent: Tuesday, March 21, 2006 7:37 PM Subject: Re: Henrik antialising > Those are the FreeType api entry points, you need to ensure the > linker can find the > libfreetype.a, likely you need a -lfreetype on your unix linker cmd > line. > > Can't speak for windows at this point. > > I will note on OS-X I downloaded and compiled freetype-2.1.10 then > built it for PPC and MacIntel then linked them into a universal > binary for the FreeType2 plugin for Sophie. Although you can link as > weak references and have the entry points resolved at run time this > only works if the OS-X user has installed X-11 on his machine, an > optional choice. > > > On 21-Mar-06, at 11:10 AM, Andrew Tween wrote: > > > : undefined reference to `FT_Init_FreeType' > > FT2Plugin.o: In function `shutdownModule': > > //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/ > > FT2Plugin.c > > :106 > > 3: undefined reference to `FT_Done_FreeType' > > dllwrap: gcc exited with status 1 > > make[1]: *** [makedll] Error 1 > > make[1]: Leaving directory > > `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugin > > s/FT2Plugin' > > make: *** [FT2Plugin.dll] Error 2 > > > > --- > > I think I may have the wrong freetype files in the wrong place. > > Do you know what I am doing wrong? > > -- > ======================================================================== > === > John M. McIntosh <[hidden email]> 1-800-477-2659 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > ======================================================================== > === > > > |
That's in "Multilingual-Display"
a sophie package On 21-Mar-06, at 4:02 PM, Andrew Tween wrote: > After much fiddling about, I have now compiled a VM with an internal > FT2Plugin. > (I had to rename freetype.a to libfreetype.a and put it in the > compiler's > lib folder. > Then add a -lfreetype to the make . > Then copy the definition of sqFilenameFromString from sq,h into the > top of > sqPlatformSpecific.h ) > > Many thanks for everyone's help. > > I am now trying to install Freetype-Fonts-JMM.8.mcz and I get this > Warning... > This package depends on the following classes: > VectorFont > You must resolve these dependencies before you will be > able to > load these definitions: > FreetypeFont > FreetypeFont > class>>colorMapForegroundColor:backgroundColor: > etc.... > > If I proceed then there are no further errors, but the FreetypeFont > class is > absent. > Do you know where the VectorFont can be installed from? > Cheers, > Andy > > ----- Original Message ----- > From: "John M McIntosh" <[hidden email]> > Newsgroups: gmane.comp.lang.smalltalk.squeak.general > Sent: Tuesday, March 21, 2006 7:37 PM > Subject: Re: Henrik antialising > > >> Those are the FreeType api entry points, you need to ensure the >> linker can find the >> libfreetype.a, likely you need a -lfreetype on your unix linker cmd >> line. >> >> Can't speak for windows at this point. >> >> I will note on OS-X I downloaded and compiled freetype-2.1.10 then >> built it for PPC and MacIntel then linked them into a universal >> binary for the FreeType2 plugin for Sophie. Although you can link as >> weak references and have the entry points resolved at run time this >> only works if the OS-X user has installed X-11 on his machine, an >> optional choice. >> >> >> On 21-Mar-06, at 11:10 AM, Andrew Tween wrote: >> >>> : undefined reference to `FT_Init_FreeType' >>> FT2Plugin.o: In function `shutdownModule': >>> //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/ >>> FT2Plugin.c >>> :106 >>> 3: undefined reference to `FT_Done_FreeType' >>> dllwrap: gcc exited with status 1 >>> make[1]: *** [makedll] Error 1 >>> make[1]: Leaving directory >>> `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugin >>> s/FT2Plugin' >>> make: *** [FT2Plugin.dll] Error 2 >>> >>> --- >>> I think I may have the wrong freetype files in the wrong place. >>> Do you know what I am doing wrong? >> >> -- >> ===================================================================== >> === >> === >> John M. McIntosh <[hidden email]> 1-800-477-2659 >> Corporate Smalltalk Consulting Ltd. http:// >> www.smalltalkconsulting.com >> ===================================================================== >> === >> === >> >> >> > -- ======================================================================== === John M. McIntosh <[hidden email]> 1-800-477-2659 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ======================================================================== === |
Thanks,
I've now got everything installed (in a 3.8 image), and the Vera fonts are rendering correctly. It looks very good. (I had to also install SophieFontManager to get SophieFontEmphasisEncoder and I had to evaluate 'TTCFont initialize' in an emergency evaluator after loading. There was a walback just after loading, and before the initialize method ran. To be safe, I then loaded all the packages again.) I can now start to move some of my sub-pixel code over, and I'll let you know how it goes. Thanks again for your help, Cheers, Andy ----- Original Message ----- From: "John M McIntosh" <[hidden email]> Newsgroups: gmane.comp.lang.smalltalk.squeak.general Sent: Wednesday, March 22, 2006 2:01 AM Subject: Re: Henrik antialising > That's in "Multilingual-Display" > > a sophie package > > > On 21-Mar-06, at 4:02 PM, Andrew Tween wrote: > > > After much fiddling about, I have now compiled a VM with an internal > > FT2Plugin. > > (I had to rename freetype.a to libfreetype.a and put it in the > > compiler's > > lib folder. > > Then add a -lfreetype to the make . > > Then copy the definition of sqFilenameFromString from sq,h into the > > top of > > sqPlatformSpecific.h ) > > > > Many thanks for everyone's help. > > > > I am now trying to install Freetype-Fonts-JMM.8.mcz and I get this > > Warning... > > This package depends on the following classes: > > VectorFont > > You must resolve these dependencies before you will be > > able to > > load these definitions: > > FreetypeFont > > FreetypeFont > > class>>colorMapForegroundColor:backgroundColor: > > etc.... > > > > If I proceed then there are no further errors, but the FreetypeFont > > class is > > absent. > > Do you know where the VectorFont can be installed from? > > Cheers, > > Andy > > > > ----- Original Message ----- > > From: "John M McIntosh" <[hidden email]> > > Newsgroups: gmane.comp.lang.smalltalk.squeak.general > > Sent: Tuesday, March 21, 2006 7:37 PM > > Subject: Re: Henrik antialising > > > > > >> Those are the FreeType api entry points, you need to ensure the > >> linker can find the > >> libfreetype.a, likely you need a -lfreetype on your unix linker cmd > >> line. > >> > >> Can't speak for windows at this point. > >> > >> I will note on OS-X I downloaded and compiled freetype-2.1.10 then > >> built it for PPC and MacIntel then linked them into a universal > >> binary for the FreeType2 plugin for Sophie. Although you can link as > >> weak references and have the entry points resolved at run time this > >> only works if the OS-X user has installed X-11 on his machine, an > >> optional choice. > >> > >> > >> On 21-Mar-06, at 11:10 AM, Andrew Tween wrote: > >> > >>> : undefined reference to `FT_Init_FreeType' > >>> FT2Plugin.o: In function `shutdownModule': > >>> //E/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugins/FT2Plugin/ > >>> FT2Plugin.c > >>> :106 > >>> 3: undefined reference to `FT_Done_FreeType' > >>> dllwrap: gcc exited with status 1 > >>> make[1]: *** [makedll] Error 1 > >>> make[1]: Leaving directory > >>> `E:/squeaks/Squeak-Win32-3.7.1-src/3.7.1/win32/plugin > >>> s/FT2Plugin' > >>> make: *** [FT2Plugin.dll] Error 2 > >>> > >>> --- > >>> I think I may have the wrong freetype files in the wrong place. > >>> Do you know what I am doing wrong? > >> > >> -- > >> ===================================================================== > >> === > >> === > >> John M. McIntosh <[hidden email]> 1-800-477-2659 > >> Corporate Smalltalk Consulting Ltd. http:// > >> www.smalltalkconsulting.com > >> ===================================================================== > >> === > >> === > >> > >> > >> > > > > -- > ======================================================================== > === > John M. McIntosh <[hidden email]> 1-800-477-2659 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > ======================================================================== > === > > > |
Ok, I'll note someone needs to restructure this and likely rename the
SophieFontEmphasisEncoder and the encoding instance variable name, it's on my todo list, but likely not going to happen for many months. What lead to the emphasis change was a need for something else than magic numbers to store emphasis information that comes from the font, such as narrow-condensed-light-italic... The adding of VectorFont and altering how of the emphasis encoding was done, and the required rebuilding, likely resulted in the walkback, and was a er *source of discussion* within the Sophie team when I whacked them with it last fall, as you see it's a bit better, still not perfect yet. On 21-Mar-06, at 7:39 PM, Andrew Tween wrote: > Thanks, > I've now got everything installed (in a 3.8 image), and the Vera > fonts are > rendering correctly. > It looks very good. > > (I had to also install SophieFontManager to get > SophieFontEmphasisEncoder > and I had to evaluate 'TTCFont initialize' in an emergency evaluator > after loading. There was a walback just after loading, and before the > initialize > method ran. To be safe, I then loaded all the packages again.) > > I can now start to move some of my sub-pixel code over, and I'll > let you > know how it goes. > Thanks again for your help, > Cheers, -- ======================================================================== === John M. McIntosh <[hidden email]> 1-800-477-2659 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ======================================================================== === |
In reply to this post by Andrew Tween
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" <[hidden email]> > To: "The general-purpose Squeak developers list" > <[hidden email]> > 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 >> >> > |
In reply to this post by Andrew Tween
Am 22.03.2006 um 01:02 schrieb Andrew Tween: > > I am now trying to install Freetype-Fonts-JMM.8.mcz and I get this > Warning... > This package depends on the following classes: > VectorFont > You must resolve these dependencies before you will be > able to > load these definitions: > FreetypeFont > FreetypeFont > class>>colorMapForegroundColor:backgroundColor: > etc.... If you go back to Freetype-Fonts-bf.6.mcz it should not depend on VectorFont but still be an AbstractFont subclass. But of course maybe the other packages changed in the mean time too (I handed off my initial work to John). Anyway, this config map once worked: http://source.impara.de/freetype/Install.mcm - Bert - |
In reply to this post by stéphane ducasse-2
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" <[hidden email]> 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" <[hidden email]> > To: "The general-purpose Squeak developers list" > <[hidden email]> > 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 >> >> > |
Andrew Tween a écrit :
> 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, Shout, I can't live without it! |
In reply to this post by Andrew Tween
2006/3/22, Andrew Tween <[hidden email]>:
> And I'm pleased that Shout is still working well for you, > Cheers, > Andy > Also work very well for me. It's a default in any of each images I own, Shout is the first package I install in every image I use! Thanks by Shout. gsa. |
In reply to this post by Andrew Tween
On 22 mars 06, at 11:03, Andrew Tween wrote: > Hi Stef, > That sounds good. I will be interested to see the new Pretty Printer. :) > Is any of it public yet? Damien published a beta in our local store (I could give you access to it). But first I think that we should check if this is working :) > And I'm pleased that Shout is still working well for you, > Cheers, > Andy > > > ----- Original Message ----- > From: "stéphane ducasse" <[hidden email]> > 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" <[hidden email]> >> To: "The general-purpose Squeak developers list" >> <[hidden email]> >> 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 >>> >>> >> > > > |
In reply to this post by Andrew Tween
Hi Andrew,
> I've now got everything installed (in a 3.8 image), and the Vera fonts are > rendering correctly. > It looks very good. Please send the mandatory screenshot. Cheers, -- Diego |
Free forum by Nabble | Edit this page |