I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures. My current knowledge is this. I read that OpenType fonts are actually Type 1 fonts embedded in an archive. So I used this 't1disasm' tool I found after wikipedia article on postscript fonts and used it to decode one of ConTeXt minimal distribution font file into a nice to read text file that looks like the transcript below, and it seems to be something I could easily understand if I find a reference. I would like to ask you if I'm in the proper direction. There are some issues I can't understand, like how can I make OpenType fonts out of Type 1 fonts when the later are supposed to only contain 256 characters (aren't they?). Or how to understand this text file format so I can write my own glyphs. Do you think I'm in the right direction. Do you think there's an easier or better way if I want to create fonts without using existing graphical tools? Thanks, Maurício %%%% Converted file excerpt: (...) /char03 { -25 625 hsbw -64 21 hstem 564 -20 hstem 0 175 vstem 150 -64 rmoveto 14 11 12 13 hvcurveto 246 vlineto 462 -267 rlineto 4 -2 4 -2 5 0 rrcurveto 9 0 8 5 5 8 rrcurveto 2 3 1 5 0 4 rrcurveto 578 vlineto 0 4 -1 4 -2 4 rrcurveto -5 8 -8 5 -9 0 rrcurveto -5 0 -4 -2 -3 -2 rrcurveto -463 -267 rlineto 246 vlineto 13 -11 12 -14 vhcurveto -125 hlineto -14 -11 -12 -13 hvcurveto -578 vlineto -13 11 -12 14 vhcurveto closepath endchar } ND /char04 { (...)
Maurício wrote:
I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures.
My current knowledge is this. I read that OpenType fonts are actually Type 1 fonts embedded in an archive.
Not exactly, and there is a much simpler way to create fonts, by using the open source font editor fontforge to do the hard work. http://fontforge.sourceforge.net/ There are two options: you can use the python scripting support of fontforge to generate fonts directly (all font types !) or you can create an SFD file (fontforge's internal storage format, which is just plain ASCII) and use fontforge itself for the final tuning. Best wishes, Taco
On Fri, Jun 19, 2009 at 10:13 AM, Taco Hoekwater
Maurício wrote:
I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures.
My current knowledge is this. I read that OpenType fonts are actually Type 1 fonts embedded in an archive.
Not exactly, and there is a much simpler way to create fonts, by using the open source font editor fontforge to do the hard work.
http://fontforge.sourceforge.net/
There are two options: you can use the python scripting support of fontforge to generate fonts directly (all font types !) or you can create an SFD file (fontforge's internal storage format, which is just plain ASCII) and use fontforge itself for the final tuning.
also really cool are http://unifiedfontobject.org/ http://www.robofab.com/ http://letterror.com/ -- luigi
I've been doing some searching on how to create my own fonts.
also really cool are
http://unifiedfontobject.org/http://www.robofab.com/http://letterror.com/
I now understand I can: * Use fontforge ascii file or unified font object to describe glyphs using a text file; * Use some other tool to create an image for a glyph and then use a tracer to make it into an ouline description for a glyph; * Use fontforge to add OpenType specific tunning. Using those options, can I do everything I want with fonts? Like japanese kanji, or arabic text where the shape of a glyph depends on next and previous ones? Thanks, Maurício
On Sat, Jun 20, 2009 at 07:07:19PM +0000, Maurício wrote:
I've been doing some searching on how to create my own fonts.
also really cool are
http://unifiedfontobject.org/http://www.robofab.com/http://letterror.com/
I now understand I can:
* Use fontforge ascii file or unified font object to describe glyphs using a text file;
FontForge can read and write unified font object (UFO) files too.
* Use some other tool to create an image for a glyph and then use a tracer to make it into an ouline description for a glyph;
* Use fontforge to add OpenType specific tunning.
Using those options, can I do everything I want with fonts? Like japanese kanji, or arabic text where the shape of a glyph depends on next and previous ones?
You can do virtually every thing, I use FontForge mainly for Arabic fonts. Regards, Khaled -- Khaled Hosny Arabic localiser and member of Arabeyes.org team Free font developer
Using those options, can I do everything I want with fonts?
You can do virtually every thing, I use FontForge mainly for Arabic fonts.
Can I ask you what you use to create arabic fonts? They always have a beatifull caligraphic style, are they usually done with tools like metafont or you just draw then on the screen? Maurício
On Sun, Jun 21, 2009 at 02:15:32AM +0000, Maurício wrote:
Using those options, can I do everything I want with fonts?
You can do virtually every thing, I use FontForge mainly for Arabic fonts.
Can I ask you what you use to create arabic fonts? They always have a beatifull caligraphic style, are they usually done with tools like metafont or you just draw then on the screen?
I usually draw the glyphs on the screen (or trace scanned paper), however there were Arabic MetaFont fonts (ArabTeX's naskh and another one by Yannis Haralambous) but both were of low artistic quality. Regards, Khaled -- Khaled Hosny Arabic localiser and member of Arabeyes.org team Free font developer
On Fri, Jun 19, 2009 at 03:20, Maurício wrote:
I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures.
My current knowledge is this. I read that OpenType fonts are actually Type 1 fonts embedded in an archive. So I used this 't1disasm' tool I found after wikipedia article on postscript fonts and used it to decode one of ConTeXt minimal distribution font file into a nice to read text file that looks like the transcript below, and it seems to be something I could easily understand if I find a reference.
I would like to ask you if I'm in the proper direction. There are some issues I can't understand, like how can I make OpenType fonts out of Type 1 fonts when the later are supposed to only contain 256 characters (aren't they?). Or how to understand this text file format so I can write my own glyphs.
Do you think I'm in the right direction. Do you think there's an easier or better way if I want to create fonts without using existing graphical tools?
Without trying to answer your question ... Just a few references that I think you should read: 1.) If you want to understand the code that you have provided at the bottom of your document, start with http://www.math.ubc.ca/~cass/graphics/manual/ and http://www.adobe.com/devnet/postscript/pdfs/PLRM.pdf. Though it's by no means essential to understand. You can just as well use metapost as a programming language and that one could generate glyph shapes in PostScript for you. 2.) It makes sense to read the MetaFont Book to get some nice ideas, or at least browse through it. 3.) As Taco suggested, it's probably best to use fontforge, or maybe MetaType1 (if you can figure out how to use it). Once you create glyph shapes with some tool (that tool could be metapost if you really want to program glyphs), you can use another tool (like fontforge or some commercial program) to create a font out of the shapes. 4.) Be prepared to invest a lot of time ... Mojca
On Fri, Jun 19, 2009 at 11:43:44AM +0200, Mojca Miklavec wrote:
4.) Be prepared to invest a lot of time ...
Tell me about it, I started three years ago and I'm nowhere close to my original goal :) Regards, Khaled -- Khaled Hosny Arabic localiser and member of Arabeyes.org team Free font developer
On Jun 19, 2009, at 7:41 AM, Khaled Hosny wrote:
On Fri, Jun 19, 2009 at 11:43:44AM +0200, Mojca Miklavec wrote:
4.) Be prepared to invest a lot of time ...
Tell me about it, I started three years ago and I'm nowhere close to my original goal :)
I've got over a decade (closing in on a decade-and-a-half) on my effort at a revival of a hot metal typeface --- maybe I'll get back to it this year.... William -- William Adams senior graphic designer Fry Communications Sphinx of black quartz, judge my vow.
On Thu, Jun 25, 2009 at 4:16 PM, William Adams
On Jun 19, 2009, at 7:41 AM, Khaled Hosny wrote:
On Fri, Jun 19, 2009 at 11:43:44AM +0200, Mojca Miklavec wrote:
4.) Be prepared to invest a lot of time ...
Tell me about it, I started three years ago and I'm nowhere close to my original goal :)
I've got over a decade (closing in on a decade-and-a-half) on my effort at a revival of a hot metal typeface --- maybe I'll get back to it this year....
uh why is it so difficult ? I mean, I understand that can be hard.. but so hard ? -- luigi
On Jun 25, 2009, at 10:25 AM, luigi scarso wrote:
uh why is it so difficult ? I mean, I understand that can be hard.. but so hard ?
I've been drawing every instance of every character I can find at every size --- then for the instances I have all of the sizes I have to regularize them so that they have the same number of nodes and for the instances where I'm missing sizes I have to fill in what's missing, adjusting the outlines to make them all proportional. Arguably this is the wrong path --- I should just be worrying about the extreme sizes and interpolating the balance --- the problem is I don't have access to a compleat character set at even a single size, let alone the twain of the extremes. I've been considering re-starting the whole thing using Metatype1 and using what I've drawn as check points, but haven't found the time yet. And I still need to do the italic, the bold and the bold-italic.... William -- William Adams senior graphic designer Fry Communications Sphinx of black quartz, judge my vow.
luigi scarso wrote:
uh why is it so difficult ? I mean, I understand that can be hard.. but so hard ?
From all I’ve learned by lurking on Typophile.com, yes; the $20–40 per weight-style most fonts sell for is quite reasonable given the work required to produce it.
William Adams wrote:
I've been considering re-starting the whole thing using Metatype1 and using what I've drawn as check points, but haven't found the time yet.
Cool idea! I don’t believe there are many METATYPE1 fonts drawn with any degree of parameterization (meta-ness)—are there any besides the GUST Antykwa fonts (Toruńska & Półtawskiego)? —Joel Salomon
Cool idea! I don’t believe there are many METATYPE1 fonts drawn with any degree of parameterization (meta-ness)—are there any besides the GUST Antykwa fonts (Toruńska & Półtawskiego)?
Of course: the Latin Modern fonts are, inheriting from Computer Modern, as is the whole Gyre family. For the latter you might say there is no real parametrization, but the Metatype1 sources are not available. Arthur
Arthur Reutenauer wrote:
Cool idea! I don’t believe there are many METATYPE1 fonts drawn with any degree of parameterization (meta-ness)—are there any besides the GUST Antykwa fonts (Toruńska & Półtawskiego)?
Of course: the Latin Modern fonts are, inheriting from Computer Modern, as is the whole Gyre family. For the latter you might say there is no real parametrization, but the Metatype1 sources are not available.
That’s not what I understood from the papers I’ve read. The original CM fonts are parametrized, but the LM set is METATYPE1 taken from traced bitmaps of CM. I.e., you cannot easily generate the 15.7pt set. —Joel Salomon
On Thu, Jun 18, 2009 at 10:20:43PM -0300, Maurício wrote:
I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures.
I think you can use MetaPost to draw the glyphs, if you are comfortable for that, then you can write fontforge scripts to import those glyphs into a font (look at mftrace for hints, it does essentially the same thing but with MetaFont+mtrace). FontForge is very powerful font editor with the widest cover of OpenType specification, and can output many font formates plus many interesting features. Regards, Khaled -- Khaled Hosny Arabic localiser and member of Arabeyes.org team Free font developer
On Fri, Jun 19, 2009 at 3:20 AM, Maurício
I've been doing some searching on how to create my own fonts. If possible, I would like to be able to write my own program to at least draw glyphs, even if I have to resort to other tools to describe hinting, kerning and ligatures.
immo, 1) draw by hand some glyphs, so you have an objective piece of paper of what you want 2) search on Internet for a font that looks like what you (think) to want 3) starting from this font, make some modifications of glyphs that you have drawn with fontforge or metapost With fontforge, you can even make countours from images , and with a bit of hack from MetaFont too. -- luigi
1) draw by hand some glyphs, so you have an objective piece of paper of what
you want 2) search on Internet for a font that looks like what you (think) to want 3) starting from this font, make some modifications of glyphs that you have drawn with fontforge or metapost With fontforge, you can even make countours from images , and with a bit of hack from MetaFont too.
-- luigi
Don't forget about other sources of inspiration. Frederic Goudy for instance made illicite rubbings in Louvre and studied Roman inscriptions on columns and other monuments, as many others did :) Best of luck! Piotr -- http://okle.pl
participants (10)
-
Arthur Reutenauer
-
Joel C. Salomon
-
Khaled Hosny
-
luigi scarso
-
Maurício
-
Maurício
-
Mojca Miklavec
-
Piotr Kopszak
-
Taco Hoekwater
-
William Adams