As of lately I have been intrigued by the world of typography, and the intricacies that make fonts better for certain things. I have been trying to study digital fonts files (the .ttf, .otf and .fon ones), but I cannot open them like a plain text file, so they must have some special formatting. I have not been able to find a lot of info about it, and the reference manuals for opentype and truetype are quite dense. Does anyone can shed me some light on this? I think there is some kind of programming involved in them, but I'm not sure about it.


  • 1
    Seen already documents like this docs.microsoft.com/en-us/typography/opentype/spec/otff ? They are provided for programmers and every given name and variable counts. Most of us are font users, but many of us can create and modify them at least technically (the artistic side can still be whatever) by using font editing software. Font editors can open font files with high abstraction level concepts and everything which needs using C or other computer programming languages stays off.
    – user82991
    Commented May 31, 2020 at 21:00
  • Yeah, I actually tried to read it but its quite technical. Can you recommend me one font editing software to see the internals?
    – H. V.
    Commented Jun 1, 2020 at 13:12
  • I wrote an answer.
    – user82991
    Commented Jun 1, 2020 at 13:33
  • Is there a specific part of font file features that you are (mainly) interested in? The physical binary format? (Documentation on this is widely available for TTF/OTF.) Glyph descriptions? (These may be TrueType or CFF.) OpenType features, low level? (Microsoft's pages contain all gruesome details.) OpenType, high level? (Adobe's AFDSK describes Feature Files, what they do, and how to use them.) Rendering? (Read all you can about FreeType.) Yes: the information is dense; especially if you expected to be able to open a font file with Notepad. Font development is a few decades past that stage.
    – Jongware
    Commented Jun 2, 2020 at 7:15
  • Maybe a little bit of how they are categorized in the font file. I have a lot to learn of them yet, I thought they were simpler.
    – H. V.
    Commented Jun 2, 2020 at 15:10

2 Answers 2


The main idea is Bézier curves: each glyph is stored as coordinates of the corners or places curves start from, and you have parameters describing the shape of each curve. In the image below, the green squares represent "corner" points. How far the red "handles" are pulled away from the green squares shows the shape of the curve.

Glyph of two Os

This is a complicated idea, but it's how all vectorized art, of any kind, is stored. If you want to see this, it might be worth just downloading the free font editor FontForge and playing around with it or an open-source font or two.There will also be encoding saying which data codes for which letter of the alphabet. There may be encoding of automatic substitutions, such as ligatures:

enter image description here

As for the more complicated OpenType, this is an explanation of the major kinds of feature, why they exist. Tal Leming has a very thorough website from the point of view of a working font developer to maybe read after that.


Get a font editor. With it you can see what data is included to fonts and you can as well edit existing fonts as create your own. There's no need to understand computer programming language level details of the font files if you use a font editor.

Warning: Copying parts (visible parts or rules for exact placing) of existing font files to be used as the basis of your own font is generally illegal as soon as you try to sell your own version or give it to others for free. Fonts are copyrighted computer software. If you download a font file you generally get also its license file. You can legally make your own versions only if it is clearly allowed in the license. If the license is missing it's no excuse for anything. It's your job to find the license and obey it.

Free font editors: Birfont, FontForge, Glyphr Studio (online)

I cannot advertise any commercial font editors in this site. There are numerous of them.

Drawing Program Inkscape has it's own font editor integrated but the results are in SVG format and can most easily be used in Inkscape. It doesn't open common existing font files.

Work tutorials to get started!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.