Where might I find some additional fonts for Squeak 3.2? I have found some font stuff at:
http://minnow.cc.gatech.edu/squeak/1406#Fonts
But it all seems old and/or broken.
If you are on Windows, check out
http://marvin.bluefish.se:8000/sm/package/802d4df0-71b5-43c0-9ee6-26fdd9 bb828e
(Outlook will probably add a linebreak in the above)
Cheers, - Andreas
-----Original Message----- From: squeak-dev-admin@lists.squeakfoundation.org [mailto:squeak-dev-admin@lists.squeakfoundation.org] On Behalf Of Albert Wagner Sent: Saturday, October 26, 2002 1:59 PM To: squeak-dev@lists.squeakfoundation.org Subject: newbie looking for fonts
Where might I find some additional fonts for Squeak 3.2? I have found some font stuff at:
http://minnow.cc.gatech.edu/squeak/1406#Fonts
But it all seems old and/or broken.
On Saturday 26 October 2002 5:28 pm, Andreas Raab wrote:
If you are on Windows, check out
http://marvin.bluefish.se:8000/sm/package/802d4df0-71b5-43c0-9ee6-26fdd9 bb828e
<snip> Thanks for the reply, Andreas. No, I am on Linux. Sorry, I should have specified.
Hi Albert,
Where might I find some additional fonts for Squeak 3.2?
The easiest way is to import your favorite fonts from X11. You will need a means to extract fonts as bdf (bitmap distribution format) files. If you run a font server then `fstobdf' (ditributed with XF86) might work for you (mine simply refuses to talk to my font server, ho hum). Otherwise there is program called `getbdf' which works just fine. (Google for the sources and compile your own -- it's teeny. Otherwise mail me and I'll send you the source.)
Step 0. Unless you already have a favorite font or two, select a font to import. (`xlfonts' gives you the full list, but it's huge. `xfontsel' lets you select fonts by selecting each individual attribute [founrdy, name, pixel size, encoding, etc.] but it's unweildy to use and you have to have an idea what the individual fields mean. The easiest approach is maybe to `xlfonts | fgrep <name>' where <name> is the family that you're interested in [e.g. helvetica]. You should probably to stick to iso8859-1 [latin1] fonts unless you know specifically that you want a different encoding.)
Step 1. Extract your font (from a Unix command line), e.g:
$ getbdf -font fixed > fixed.bdf
Step 2. Import it into Squeak (evaluate this in a Squeak workspace):
TextConstants at: #Fixed put: (TextStyle fontArray: { StrikeFont newFromBDFFile: 'fixed.bdf' name: 'Fixed13' }).
Step 3. Delete the .bdf file, which is no longer useful.
Step 4. Use `bgMenu > appearance ... > system fonts...' to select where you want to use your newly-imported font(s).
If you want to import other fonts then be sure to change `#Fixed' and `Fixed13' (the number is the point size of the font) appropriately to avoid collisions.
Also, you may have to use full font names to import more interesting fonts. (`fixed' and similar names are aliases, and there are many more fonts available than there are aliases set up for them. E.g., I use -adobe-helvetica-medium-r-normal--10-100-75-75-p-56-iso8859-1 as my default text and menu font in Squeak. I think it's very attractive and that it gives Squeak a _much_ more professional appearance than the default NewYork font.)
Note also that the new fonts will only take effect in newly-opened windows.
Regards,
Ian
On Sat, 26 Oct 2002, Ian Piumarta wrote:
Step 0. Unless you already have a favorite font or two, select a font to import. (`xlfonts' gives you the full list, but it's
^^^^^^^^^ xlsfonts
maybe to `xlfonts | fgrep <name>' where <name> is the family
^^^^^^^^^ xlsfonts
My `s' key needs cleaning. :-(
Ian
On Sat, 26 Oct 2002, Ian Piumarta wrote:
Hi Albert,
Where might I find some additional fonts for Squeak 3.2?
The easiest way is to import your favorite fonts from X11. You will need a means to extract fonts as bdf (bitmap distribution format) files. If you run a font server then `fstobdf' (ditributed with XF86) might work for you (mine simply refuses to talk to my font server, ho hum).
Works for me, but I have to give it a numerical port
fslsfonts -server localhost:7100 fstobdf -server localhost:7100 -fn ...
OTOH, a font plugin for X would be nice, too. Andreas' frame work doesn't fit X's idea of font names terribly well, but from a first glance it's general enough to be usable:
http://isgwww.cs.uni-magdeburg.de/~raab/squeak/goodies/Win32NativeFonts.zip
Andreas, could you explain the non-obvious functions a bit? Like what are ioFontEmbeddingFlags() and ioGetFontData() supposed to be?
char *ioListFont(int fontIndex); int ioCreateFont(int fontNameIndex, int fontNameLength, int pixelSize, int flags); int ioDestroyFont(int fontIndex); int ioFontWidthOfChar(int fontIndex, int characterIndex); int ioFontFullWidthOfChar(int fontIndex, int characterIndex, int width[3]); int ioFontNumKernPairs(int fontIndex); int ioFontGetKernPair(int fontIndex, int kernIndex, int kernPair[3]); int ioFontGlyphOfChar(int fontIndex, int characterIndex, int formBitsIndex, int formWidth, int formHeight, int formDepth); int ioFontEncoding(int fontIndex); int ioFontAscent(int fontIndex); int ioFontDescent(int fontIndex); int ioFontEmbeddingFlags(int fontIndex); int ioGetFontDataSize(int fontIndex); int ioGetFontData(int fontIndex, char *buffer, int bufSize);
-- Bert
Andreas, could you explain the non-obvious functions a bit?
char *ioListFont(int fontIndex); * Returns the name for the font with index "fontIndex" (this assumes there's a way of enumerating the font names uniquely)
int ioCreateFont(int fontNameIndex, int fontNameLength, int pixelSize, int flags); * Creates a font instance and return an "int" handle - fontNameIndex/Length: The font name - pixelSize: The requested size in pixels (not points) - flags: encoding bold/italic/underline/struckout
int ioDestroyFont(int fontIndex); * Destroys the font with the given font handle
int ioFontWidthOfChar(int fontIndex, int characterIndex); * Returns the width (in pixels) of one character in a font - fontIndex: the handle to the font - charIndex: the index of the character
int ioFontFullWidthOfChar(int fontIndex, int characterIndex, int width[3]); * Returns the width of a character describing: - width[0]: The advance width before the glyph is drawn (may be negative -> underhang) - width[1]: The glyph width - width[2]: The advance width after the glyph is drawn (may be negative -> overhang)
int ioFontNumKernPairs(int fontIndex); * Returns the number of kerning pairs for this font
int ioFontGetKernPair(int fontIndex, int kernIndex, int kernPair[3]); * Returns a kerninpair: - kernPair[0]: Left character - kernPair[1]: Right charater - kernPair[2]: kerning value
int ioFontGlyphOfChar(int fontIndex, int characterIndex, int formBitsIndex, int formWidth, int formHeight, int formDepth); * Returns the form for the given character
int ioFontEncoding(int fontIndex); * Returns the encoding for this font: - 0: Mac Roman - 1: ISO-Latin
int ioFontAscent(int fontIndex); * Returns the ascent of the font
int ioFontDescent(int fontIndex); * Returns the descent of the font
int ioFontEmbeddingFlags(int fontIndex); * Returns the "font embedding" flags as defined by the TrueType specification (the embedding flags describe if and how fonts may be redistributed with documents)
int ioGetFontDataSize(int fontIndex); * Returns the size needed for embedding font data
int ioGetFontData(int fontIndex, char *buffer, int bufSize); * Returns the data for font embedding
Cheers, - Andreas
Hi Bert,
Works for me, but I have to give it a numerical port
fslsfonts -server localhost:7100 fstobdf -server localhost:7100 -fn ...
Been there. I also tried "{tcp,unix}/[localhost]:7100" and all the other combinations possible. Oh well. Luckily getbdf works fine for me.
OTOH, a font plugin for X would be nice, too.
Wouldn't it! :^)
Regards, Ian
Albert Wagner alwagner@tcac.net wrote:
Where might I find some additional fonts for Squeak 3.2? I have found
some
font stuff at:
But it all seems old and/or broken.
Did you try the AccuFonts from: http://minnow.cc.gatech.edu/squeak/696 The file AccuFonts.zip contains a project file that you can load into Squeak 3.2. To do it, you uncompress the zip file. This gives you a file with ending .pr . From within Squeak, you open a file list browser, select the *.pr file and load it with menu option "load as project" After a short while, you will see a small window. Doubleclick on that small window. It is opened in full size and you can now click on the button "Click her to load new fonts". Once you have done this you can leave the project (menu option: previous project) and destroy the little project window. Do not forget to save your image to make the new fonts a permantent part of it.
I hope this helps - if it does not, please feel free to drop me a line
Greetings Boris
On Saturday 26 October 2002 7:44 pm, Boris Gaertner wrote:
Albert Wagner alwagner@tcac.net wrote:
Where might I find some additional fonts for Squeak 3.2? I have found
<snip>
Did you try the AccuFonts from: http://minnow.cc.gatech.edu/squeak/696
<snip> Thanks, Boris. Yes, sort of :-); I downloaded AccuFonts and, being a real newbie with Squeak, just tried to file it in. Now I see that *.pr is a project file and will require different handling. Thank you for the instructions. I'll try it again the right way. I hope you guys don't lose patience with me doing and asking dumb things for awhile. I had about ten years with Digitalk's ST/V in the '80s and '90s but have been away from ST for awhile. Squeak is somewhat enhanced and my memory is somewhat degraded.
Albert
"Boris Gaertner" Boris.Gaertner@gmx.net wrote:
Did you try the AccuFonts from: http://minnow.cc.gatech.edu/squeak/696 The file AccuFonts.zip contains a project file that you can load into Squeak 3.2. To do it, you uncompress the zip file. This gives you a file with ending .pr .
Or, just go to Bob's SuperSwiki, which is where I always load it from....
-Lex
"Boris Gaertner" Boris.Gaertner@gmx.net writes:
The file AccuFonts.zip contains a project file that you can load into Squeak 3.2. To do it, you uncompress the zip file. This gives you a file with ending .pr . From within Squeak, you open a file list
I only got a folder with *.sf2 files plus the license. I've downloaded the archive from
http://minnow.cc.gatech.edu/squeak/696
No project file.
Nils Kassube nika@kassube.de wrote:
"Boris Gaertner" Boris.Gaertner@gmx.net writes:
The file AccuFonts.zip contains a project file that you can load into Squeak 3.2. To do it, you uncompress the zip file. This gives you a file with ending .pr . From within Squeak, you open a file list
I only got a folder with *.sf2 files plus the license. I've downloaded the archive from
http://minnow.cc.gatech.edu/squeak/696
No project file.
Oh, you are right. I confused two different files. The project file is the AccuFontLoader that is mentioned on page http://minnow.cc.gatech.edu/squeak/1406 The AccuFontLoad itself can be downloaded from http://209.143.91.36/super/61 It is the file AccuFontLoader.006.pr Essentially I wanted to tell Albert how to use that file. Regrettably I gave him the wrong pointer. Thank you for telling me that I made a mistake.
As to the zip file from http://minnow.cc.gatech.edu/squeak/696: It contains the AccuFonts as a collection of files in sf2-format. To load the *.sf2 files, copy them into the working directory of Squeak. In Squeak, execute this statement in a workspace:
* for Squeak 3.2: #('Accuat' 'Accuca' 'Accujen' 'Accula' 'Accumo' 'Accumon' 'Accuny' 'Accushi' 'Accuve') do: [:name | TextConstants at: name asSymbol put: (TextStyle fontArray: (StrikeFont readStrikeFont2Family: name))].
* for Squeak 3.3 alfa:
#('Accuat' 'Accuca' 'Accujen' 'Accula' 'Accumo' 'Accumon' 'Accuny' 'Accushi' 'Accuve') do: [:name | TextConstants definedNames at: name asSymbol put: (TextStyle fontArray: (StrikeFont readStrikeFont2Family: name))].
Remark: It is not possible to load the project file into Squeak 3.3 alfa. For this version, you can only use the sf2-files which can be loaded with the statement above.
My apologies for the confusion!
Greetings Boris
On Wednesday 30 October 2002 3:12 pm, Boris Gaertner wrote: <snip>
Essentially I wanted to tell Albert how to use that file. Regrettably I gave him the wrong pointer.
<snip> That was not a problem for me; I already had the file but just didn't know what to do with it. Your instructions were excellent. I installed the fonts without further problems. Thanks.
squeak-dev@lists.squeakfoundation.org