Typeface
lastmod 2026-07-07created 2014-04-03127 edits
A typeface is a set of character shapes designed with consistency. Related terms include type style and font, but nowadays they are often used interchangeably without distinction.
Category
- Writing system (Korean: 문자 체계)
- Halfwidth and fullwidth forms (Korean: 전각 문자와 반각 문자, Korean: 전각, Korean: 반각)
- Emoji (Korean: 이모티콘, Korean: 이모지)
- TrueType
- Font
- Typography
- Design
- Icon
- OpenType
- Web typography (Web Font; webfont; WebFont)
- fonts.conf (x11)
- Linux:Font
- CSS:font
- Font Awesome
- Font hinting
- Unicode font
- SIL Open Font License (OFL)
- Web Open Font Format (Web font)
- Android:Typeface - Notes on fonts used in Android
- Variable fonts
- True Type Font (TTF)
- Open Type Font (OTF)
- Web Open Font Format (WOFF)
- Scalable Vector Graphics font (SVG)
- Embedded Open Type (EOT)
- Standard Music Font Layout (SMuFL)
- CSS:font
- CSS:@font-face
- wqy-zenhei
Tools
- 15 Best Tools for Linux Font Management
- fontmatrix - A useful GUI for viewing font metrics. (Cons: search is buggy)
- FontForge - Can be used to edit fonts. (Feels like the whole GUI is made of dialog boxes; inconvenient~)
- FontBase
- Font Manager
- Birdfont
- HarfBuzz
- FreeType (GUI)
- fontTools
- Fonty Python
- TruFont
- Opcion Font Viewer
- GNOME Font Viewer
- myFontbook
- Wordmark.it
- MATE Font Viewer
- fonttools (python - include pyftsubset)
- xfd - Displays all fonts in an x11 window
- fontconfig - (fc-list, fc-query, etc.)
- Typlr - Create fonts with nothing but a web browser
Libraries
- [Recommended] Fontsource - Self-host Open Source fonts in neatly bundled NPM packages.
Font copyright information
Font files are copyrighted, but the font (typeface) itself is not copyrightable. For details,
see the page above.
Computer font
A computer font is the shape of the characters seen on a computer, or the electronic data file that holds them.
Display methods
Display methods fall broadly into bitmap, vector, and stroke methods.
- Bitmap fonts: made of fixed-size dots, so they process quickly, but they only look right at their set size, and when enlarged, the rounded parts of strokes look like stairs.
- Outline fonts: also called vector fonts; they don't break when resized, but drawing the lines takes a little more processing time.
- Stroke fonts use a series of specified lines and additional information to define the profile, size, and shape of a line of a particular shape.
User interface fonts in older operating systems embedded (added) bitmap fonts into vector fonts. Bitmap fonts alone have problems with scaling down, scaling up, and printing (because scalable bitmap information is usually not included: the actual font specification does allow scalable bitmap information), so the vector method is used alongside them.
A bitmap appears on screen exactly as drawn, whereas with vector fonts, rendering the outline on screen introduces distortion and can make glyphs break into unwanted shapes. For this reason, bitmaps are designed for specific sizes and then embedded into the vector font.
Width variation
Depending on how character widths vary, fonts can be divided into fixed-width fonts and variable-width fonts.
- Fixed-width fonts: assign the same width regardless of the character.
- In Korean fonts, a Hangul character actually takes up twice the width of a Latin character.
- Wide width: characters such as W get a wide width.
- Narrow width: characters such as i get a narrow width.
Various methods have been introduced for finer control over appearance. For example, for pairs like 'VA' that end up with too much kerning (letter spacing) by ordinary means, the font itself may contain kerning pair information, or kerning may be specified manually.
Depending on the script, variable-width fonts are often rarely used or hard to use at all. For example, variable-width fonts are hard to make for Chinese characters, and as a result kana and Hangul fonts are also often fixed-width.
Font properties
When displayed on a computer, fonts are affected by various property settings. Typographic design has the following elements.
- Size: font size is measured in points. Computer fonts commonly use 9~12 points, and fonts of 6 points or smaller can become very hard to read.
- Alignment: right alignment, left alignment, justified alignment, and center alignment are mainly used.
- Widows and orphans: a word displayed alone, cut off from its sentence, is called a widow, and one cut off at the start of a paragraph is called an orphan.
- Line length: the line length of a paragraph follows the principle that too much is as bad as too little; neither too long nor too short.
- Leading: line spacing, or the vertical space between lines. Usually about 20% larger than the font size. Lines that are too close together or too far apart become hard to read.
- Kerning: letter spacing, or character spacing, is the horizontal space between characters. It should usually be large enough to display the characters adequately.
Font formats
- Type 1 and Type 3 fonts
- Type 1 and Type 3 fonts were developed by Adobe for professional digital typesetting. With PostScript they become outline fonts made of cubic Bézier curves. Type 1 fonts are limited to a subset of the PostScript language and use Adobe's hinting system, and were very widely used. Type 3 fonts allow unrestricted use of the PostScript language but contain no hinting information, so they may break on low-resolution devices (dot matrix printers and computer screens).
- TrueType fonts
- TrueType is a font system developed by Apple. It was created to replace Type 1 fonts. Unlike Type 1 fonts, TrueType is drawn with Bézier curves. Today it is widely used and supported on all major operating systems.
- OpenType fonts
- OpenType is a smart font system designed by Adobe and Microsoft. OpenType fonts contain outlines in TrueType or Type 1 (actually CFF) format, along with a wide range of metadata.
- METAFONT
- METAFONT is a different kind of font. Unlike TrueType, it is built on a vector font system.
Terminology
- Glyph
- In a font file, the shape information of each individual character is called a glyph. Fonts are classified as bitmap fonts, outline fonts, and so on, depending on how glyphs are stored; TrueType stores the outlines of characters. The order of glyphs inside a font file is not fixed.
- Character map (CharMap)
- cmap - Character To Glyph Index Mapping Table
- A mapping table between character codes and glyphs. The character map holds which character code corresponds to which glyph.
- Metrics
- Values for the characteristics of a face. It stores information such as the size of the design grid used to make the font, the area of the characters within the grid, and the position of the underline. It also stores size information for individual glyphs: how tall each one is, where the next character should go, how much margin there is, and so on.
- Hinting, kerning
- Advanced information such as hinting and kerning, which adjusts the shape and spacing of characters, is also recorded in full in the face. When text is rendered, this information is used to place glyphs in exactly the right positions and to produce readable output when scaling up or down. In short, you can think of the face as containing all the information needed to render text.
- Serif font
- The part that sticks out sharply like a fishhook at the end of a character's stroke is called a serif. It corresponds to Roman type, or to Myeongjo type in Hangul. It is mainly used for body text, probably because serifs help readability a little.
- Sans-serif font
- Sans-serif is a font made of plain straight lines, without the sharp fishhook-like decorative strokes. In French, sans means "without". So Sans-serif means "without serif". It corresponds to Gothic type. It is mainly used for titles or parts that need emphasis.
- Fixed-width font (Monospace Font)
- Each character fits into a square box, so all characters have the same height and size.
- Variable-width font (proportional font; Proportional font)
- A proportional font is a font in which each character takes up only as much width as it needs.
- Ligature
- A ligature combines two characters into a single shape. For example, in French,
œis a ligature ofoe. - Includes multi-character ligatures (combined special symbols) to make combinations of symbols often used in code easier to read.
- A typical example is JetBrainsMonoNL, where the suffix "NL" stands for "No Ligatures". (In coding, "!=" is combined into "≠")
Font metrics
The word Sphinx, set in Adobe Caslon Pro to illustrate the concepts of baseline, x-height, body size, descent and ascent.
- Wikipedia (en) Typeface#Font metrics
- Typography size terminology
- Meaning of top, ascent, baseline, descent, bottom, and leading in Android's FontMetrics - Stack Overflow
- Baseline
- Think of it as the line that capital letters sit on.
- Reportedly, in some cases numerals can also extend below this line.
- Ascent (ascender height)
- From the baseline to the highest part of a character. Can vary from character to character.
- The recommended distance above the baseline for single-spaced text.
- Aescent (descender height)
- From the baseline to the lowest part of a character
- The recommended distance below the baseline for single-spaced text.
- Cap Height
- From the baseline to the height of typical capital letters, excluding a few characters
- Characters such as H, I, O, and A can reportedly rise above this height.
- x-height
- From the baseline to the height of typical lowercase letters
- Specifically, from the baseline to the height of the lowercase x
- Some lowercase letters can be taller or shorter than this height.
- Overshoot
- Going beyond the Cap Height (or x-height) above
- Mean line (or midline)
- Midway between the baseline and the cap height
- Not necessarily the same as the x-height.
- Top
- The maximum distance above the baseline for the tallest glyph in the font at a given text size.
- Bottom
- The maximum distance below the baseline for the lowest glyph in the font at a given text size.
- Leading
- The recommended additional space to add between lines of text.
Font_metrics.png
Developer favorite font
- Finding the Best Programmer's Font
- 10 of the Best Programming Fonts
- TOP 10 PROGRAMMING FONTS
- Finding the Best Programmer's Font
A list of recommended fonts for developers. A font for development should meet the following conditions as far as possible.
- It must support fixed-width characters.
- It must make similar characters distinguishable, such as the digit 1, the capital letter I, and the lowercase letter l.
- Dotum, DotumChe, Gulim, GulimChe
- Fonts installed by default on Windows.
- Basic fonts that are easy to use in Visual Studio, but the capital I and lowercase l are hard to tell apart.
- In Eclipse, they are sometimes not rendered as fixed-width.
- Nanum Gothic Coding (Nanumfont)
- http://dev.naver.com/projects/nanumfont/ 1
- Run as a Naver open project, with the goal of developing a font for Korean developers.
- Bitstream Vera Fonts
- http://www.gnome.org/fonts/
- Monaco
- http://en.wikipedia.org/wiki/Monaco_(typeface)
- http://www.gringod.com/2006/11/01/new-version-of-monaco-font/
- Monaco font, a font for coding
- NERD FONTS
- https://www.nerdfonts.com/
- https://github.com/ryanoasis/nerd-fonts
- (vim-devicons) https://github.com/ryanoasis/vim-devicons/wiki/Installation
- JetBrains Mono (JetBrainsMono, JetBrainsMonoNL)
- https://www.jetbrains.com/ko-kr/lp/mono/
- https://github.com/JetBrains/JetBrainsMono
- D2 Coding
- https://github.com/naver/d2codingfont
- D2Coding Nerd
- https://github.com/kelvinks/D2Coding_Nerd
- Jetendard
- JetBrainsMono Nerd Font Mono rebuilt with Pretendard Korean glyphs for balanced Hangul monospace rendering.
- https://github.com/kuskhan/jetendard
How to read NERD FONTS file names
For example, take the file "JetBrainsMonoNLNerdFontMono-Thin.ttf":
- JetBrainsMono
- The base name of this font. JetBrains Mono is a font developed by JetBrains and optimized for programming and development environments.
- Its features include high readability and a design that makes the structure of code easy to grasp.
- NL
- NL usually stands for No Ligatures, meaning a version without ligatures.
- In programmer fonts, this is the version without the ligatures that render characters such as !=, <=, and -> as special symbols.
- NerdFont
- Indicates that this font is a version with the Nerd Fonts patch applied.
- Nerd Fonts are fonts that include icons often used by developers and terminal users.
- For example, file type icons, Git status icons, and so on are added.
- Mono
- Mono means a font with a fixed character width (monospaced).
- In situations like programming, a consistent character width is important for aligning code.
- Thin
- Indicates the font weight. Thin is one of the thinnest weights, giving characters drawn with very fine lines.
- Font weights are divided into Light, Regular, Bold, and so on, and Thin is even thinner than Light.
- .ttf
- The TrueType Font file format.
- This format is one of the standard formats for font rendering and is supported on many operating systems, including Windows, macOS, and Linux.
Summary:
- JetBrains Mono: JetBrains' font for programming
- NL: version without ligature support
- NerdFont: adds icons for programming/terminals
- Mono: fixed-width font
- Thin: thin weight style
- .ttf: TrueType Font format
This file is a fixed-width font used mainly in programming environments (e.g. IDEs, terminals), offering extra icons and a thin, refined style.
Free font
- GNU Unifont
- Basic Multilingual Plane (BMP) compatible.
- Alpine
-
Font_-_Alpine.png - http://www.1001fonts.com/alpine-font.html
-
Alpine.zip - {|class="wikitable"
! Free For
Personal Use || Free For
Commercial Use || Modification
Allowed || Redistribution
Allowed |- | O || O || X || X |}
- Ethnocentric
-
Font_-_Ethnocentric_Rg.png - http://www.1001fonts.com/ethnocentric-font.html
-
Ethnocentric.zip - {|class="wikitable"
! Free For
Personal Use || Free For
Commercial Use || Modification
Allowed || Redistribution
Allowed |- | O || O || O || X |}
- Good Times
-
Font_-_Good_Times_Rg.png - http://www.1001fonts.com/good-times-font.html
-
Good-times.zip - {|class="wikitable"
! Free For
Personal Use || Free For
Commercial Use || Modification
Allowed || Redistribution
Allowed |- | O || O || O || X |}
- Advent Pro Font Family
-
Font-Advent_Pro_Font_Family.png - http://www.1001fonts.com/advent-pro-font.html
- https://www.google.com/fonts/specimen/Advent+Pro
-
Advent-pro.zip - License: OFL
- {|class="wikitable"
! Free For
Personal Use || Free For
Commercial Use || Modification
Allowed || Redistribution
Allowed |- | O || O || O || O |}
Modern style
Adobe Source Han fonts (CJK)
Large collection of fonts which comprehensively support Simplified Chinese, Traditional Chinese, Japanese, and Korean, with a consistent design and look.
- Sans fonts: adobe-source-han-sans-otc-fonts
- Serif fonts: adobe-source-han-serif-otc-fonts
Nanum font
- Nanum font download site
- Nanum fonts, good fonts for commercial use
- Nanum Gothic is Naver's open source, under the OFL license
- Nanum Gothic Coding website
Download (2020-08-22):
- All fonts: NanumFontSetup_TTF_ALL.zip
- Barun Gothic: NanumFontSetup_TTF_BARUNGOTHIC.zip
yangheeryu
Personal Github page: https://github.com/yangheeryu
- Gowun Dodum & Gowun Batang - Korean fonts
- https://github.com/yangheeryu/Gowun-Dodum
- Gowun Dodum: a sans-serif font with a comfortable, friendly feel, its strokes keeping their varying weight and slant
- Gowun Batang: a serif font with a neat, graceful handwritten look, as if each character were carefully written one by one
- SIL Open Font License
- 11,172 Hangul syllables. Includes the Latin characters, punctuation, and symbols of KS X 1001
- Completed by adding 8822 Hangul syllables to the "Gowun Hangul Batang/Dodum" typeface released in 2010
- Dongle Hangul
- https://github.com/yangheeryu/Dongle
- Dongle Hangul is a display typeface with a free, cheerful expression, built outside the square character frame.
- Depending on how many strokes a character has, it forms an uneven, bright, and lively rhythm.
NeoDunggeunmo
Modern TrueType font based on an old-but-good Korean bitmap font.
A font well suited to Pixel Art games.
Galmuri
Bitmap fonts based on the font design from Nintendo DS
A balanced Hangul bitmap font that stays readable even at small sizes.
Inter
The default font of Tailwind.
Bon Gothic (Noto Sans)
See Noto Sans (Korean: 본고딕; Source Han Sans).
Wanted Sans
- Github - wanteddev/wanted-sans
- A straight yet flexible sans-serif font | A Sans-serif font; Geometric with a heart, Humanist with a soul
- A new font made with the participation of the creator of Pretendard
- The Korean font is based on Bon Gothic (Noto Sans), and is basically the same as its predecessor, Pretendard
- However, the ExtraBold weight has been slightly modified
- Has the same height as Apple San Francisco, and therefore the same as Pretendard
- Context-aware: automatically displays forms that sit naturally with Hangul and make shapes easier to tell apart in characters and words where needed.
- Supports a variety of OpenType features as needed, such as tabular figures, case-sensitive forms, localized forms for each language and country, ligatures, fractions and superscripts/subscripts, ordinals and alternate forms, and more
D2 Coding font
Comic Mono monospace font
A legible monospace font… the very typeface you’ve been trained to recognize since childhood. This font is a fork of Shannon Miwa’s Comic Shanns (version 1).
- A further fork of Comic Shanns, which is itself a monospace fork of Comic Sans
- Modified so that every glyph is exactly the same width
- Glyphs adjusted based on the metrics of the Cousine font to blend better with system fonts
- Bold version generated with FontForge's Embolden feature
- MIT license
Nanum Gothic Coding
Added to Mono when building web pages.
Sunflower
Added to Sans when building web pages.
Hamlet (Hahmlet)
Added to Serif when building web pages.
8x4x4-fonts
- Old-school 8x4x4 johab fonts from the 16-bit DOS era converted to TrueType and more | GeekNews
- Github - iolo/8x4x4-fonts
- 8x4x4-fonts
Converts the old-school 8x4x4 johab (composed Hangul) fonts used in the 16-bit DOS era to TrueType and other formats
- Hanme: Hanme Hangul (for DOS) + English (sans|serif) + (Nerd Font)
- Iyagi: Iyagi (for DOS) + English (sans|serif) + (Nerd Font)
- Dkby: Dokkaebi Hangul + English (sans|serif) + (Nerd Font)
- Sans (the common gothic of the time) + English sans + (Nerd Font)
- Serif (the common myeongjo of the time) + English serif + (Nerd Font)
Other free fonts
Other fonts
- iA-Fonts
- Free variable writing fonts from iA
- https://github.com/iaolo/iA-Fonts
- iA Fonts - fonts that feel somewhere between monospace and proportional | GeekNews
- Pretendard
- https://github.com/orioncactus/pretendard
- https://cactus.tistory.com/306
- Pretendard - a Korean font alternative to system-ui that works on any platform | GeekNews
- Gorton
- Gorton, the most used font in Manhattan | GeekNews
- The hardest working font in Manhattan – Aresluna
- A font with a retro feel
- Geist Pixel
- A bitmap-style typeface based on a pixel grid, built on the foundation of Geist Sans/Mono, with a precise and deliberate digital feel
- Geist Pixel can be downloaded from the Vercel Font page
- Vercel releases the Geist Pixel font | GeekNews
- 5x5 Pixel font for tiny screens
- 5x5 pixel font for small screens | GeekNews
- 5x5 Pixel font for tiny screens (Maurycy's blog)
- Nanofont3x4
- Nanofont3x4: the smallest 3x4 font with lowercase support | GeekNews
- Github - Michaelangel007/nanofont3x4
- iA Fonts
- iA Fonts - fonts that feel somewhere between monospace and proportional | GeekNews
- Github iaolo/iA-Fonts
- Datatype
- A variable font that turns text into charts
- Datatype - a variable font that turns text into charts | GeekNews
- Github - franktisellano/datatype
Favorite site
- Wikipedia (en) article on typefaces
- Wikipedia (en) article on fonts (Font)
- Wikipedia (en) article on computer fonts (Font)
- Wikipedia (en) Unicode font
- Fonts - ArchWiki
- Merging an English font with a Korean font
- About fonts - HyacinthWiki
- Search 'n find FONTS used by World Brands (A catalog of the fonts used in company and brand logos.)
- [Recommended] Youtube - Culture and Arts for You - Why do designers love ‘gothic’ typefaces?
Guide
- The Open Font License (OFL), recommended for app developers
- Baemin Hanna font license (includes an interpretation of the OFL, etc.)
Articles
- You’re loading fonts wrong (and it’s crippling your performance) | GeekNews
- [Original] You’re loading fonts wrong (and it’s crippling your performance) - Jono Alderson
- Web fonts are a visual element of a website that shapes the brand and user experience, and they directly affect performance and accessibility
- Loading fonts the wrong way causes FOUT (flash of unstyled text) or FOIT (flash of invisible text), which hurts Core Web Vitals
- WOFF2 is a modern, efficient font format supported by most current browsers; dropping unnecessary legacy formats improves performance
- Font subsetting and preload strategies are essential for cutting unnecessary data transfer and speeding up page loads
- Use system font stacks and CSS descriptors to minimize layout shift (CLS) while fonts load and to provide a stable user experience
- [Original] Features of your font you had no idea about · OlegWock
- Hidden features of fonts: variable axes, alternate glyphs, stylistic alternates, swashes, numerals, Small Caps, contextual alternates
Free Font
- 1001 Free Fonts: the most popular free font archive, first opened in 1998, keeps growing online
- Free Commercial Use Fonts
- Font Club (check whether commercial use is allowed for each font)
- Cute Font (check whether commercial use is allowed for each font)
- Google web fonts can be used on for-profit (commercial) blogs (setting up the Nanum Gothic web font)
Online Tools
- AI Korean font search - Searches for fonts using an image.
- TypeTrials - a platform for testing (variable) fonts
Design
- Designing icons based on fonts - (Font, Typeface, Typography, Design, Icon)
- Recommended typeface pairings
References
-
NanumGothicCoding-2.0.zip ↩
- Art
- C++:Encoding
- CJK
- CSS:@font-face
- CSS:font
- Design
- Eclipse:ConfigurationSetting
- Firefox
- Font Awesome
- Font hinting
- Font-files
- FontForge
- Fontmatrix
- Fontsource
- Halfwidth and fullwidth forms
- Humanities
- Icon
- JavaScript:Libraries
- KS X 1001
- Ligatures
- Monospace
- OpenType
- Programming
- Proportional
- Sans-serif
- Serif
- SIL Open Font License
- Source Han Sans
- Standard Music Font Layout
- TrueType
- Typlr
- Typography
- Unicode font
- Variable Fonts
- Vi
- Web Open Font Format
- Web typography
- Wqy-zenhei
- Writing system
- Xfd