Hi,
----- Original Message ----- From: "Brad Fuller" brad@bradfuller.com To: "The general-purpose Squeak developers list" squeak-dev@lists.squeakfoundation.org Sent: Sunday, April 22, 2007 3:33 AM Subject: Re: what is the status of the font rendering
Andrew Tween wrote:
Andrew Tween wrote:
One problem with storing paths in a class var is what happens when a user saves
their image and gives it to someone who is using a different OS, with a different set of fonts, in different locations. Do they then have to re-configure, or revert to defaults, before the fonts can be found?
This is a very good point. What is your recommendation for image distribution to users (not developers) to use the fonts on their PC? I don't think it's a good idea to tell them how to go to SqueakMap, install the plugins and then the freetype package. It should just work, as you say.
Distribute an image that contains the packages, together with a VM that
includes
the plugins. Include any required font files in {imageFolder}/Fonts. (Assuming you have a license to redistribute those fonts) For an example, look at how Sophie is distributed.
Good idea. I'll check it out.
For example, let's say you created an image on Linux to distribute. What do you tell windows users on how to use your image? (at this point, I assume Mac users are not an issue because that hasn't been completed, yes?)
You create an image on Linux, using a VM that has access to the Linux
FT2Plugin.
You give that image to a Windows user, using a VM with access to the Windows FT2Plugin.
It will just work.
It won't just work since the plugins are not in the standard VM package, right? My point was that I would expect I would have to distribute the needed plugins with the VM since (it appears) plugins (like FT2Plugin) are required to install separately - i.e. they don't come with the standard VM package that one dnl's from squeak.org. I'd have to do that for each platform.
True. But the image wiil still function if the plugins are missing.
If FT2Plugin is missing, then all FreeType fonts will render as Accuny. The font menu will show no available FreeType fonts.
If the modified BitBltPlugin is missing (i.e. the new combination rule 41 is not available), the FreeType fonts will render using the existing alpha blending rule 34. Sub-pixel anti-aliasing won't work (it will automatically revert to greyscale), the Glyph Contrast preference won't have any effect, and memory consumption will be higher because it will need to cache coloured glyphs.
You can test this out by saving an image which uses FreeType fonts. Then close the image, rename one, or both, plugins, and start the image again.
I was hoping that there would be a better way ;-)
I suppose you could add a class to your image that is notifed of image startup. It could warn the user that some plugins are missing, and ask them if they want to download them (or an updated VM that contains them). Having downloaded, it would ask the user to close and restart the image.
This could even be a generic thing, dealing with more than just the FreeType stuff.
Cheers, Andy
Fonts that are missing willl render differently (using Accuny strike font). And some fonts might render slightly differently because the FreeType
library
version is different on the two platforms.
that's good to know. thanks.
-- brad fuller www.bradfuller.com +1 (408) 799-6124