Rename to Comic Mono

This commit is contained in:
Thai on Cloud9 2019-06-07 11:05:30 +00:00
parent c13e928eef
commit 95ef988207
8 changed files with 42 additions and 35 deletions

BIN
ComicMono-Bold.ttf Normal file

Binary file not shown.

BIN
ComicMono.ttf Normal file

Binary file not shown.

View File

@ -1,6 +1,7 @@
MIT License MIT License
Copyright (c) 2018 Shannon Miwa Original work Copyright (c) 2018 Shannon Miwa
Modified work Copyright (c) 2019 dtinth
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@ -1,10 +1,13 @@
# What it is # Comic Mono
A classy font. A monospaced font based on [Shannon Miwa](https://github.com/shannpersand)s [Comic Shanns](https://github.com/shannpersand/comic-shanns).
## Changes in dtinths fork ## Changes from Comic Shanns
1. All glyphs have been adjusted to have exactly the same width (using code based on [monospacifier](https://github.com/cpitclaudel/monospacifier)) 1. All glyphs have been adjusted to have exactly the same width (using code based on [monospacifier](https://github.com/cpitclaudel/monospacifier))
2. The glyph metrics have been adjusted to make it display better alongside system font. 2. The glyph metrics have been adjusted to make it display better alongside system font, based on [Cousine](https://fonts.google.com/specimen/Cousine)s metrics.
3. The name is changed to `Comic Shanns dtinth`. 3. The name is changed to `Comic Mono`.
4. A bold version of the font is generated using [FontForges Embolden](https://fontforge.github.io/Styles.html#Embolden)
I have no font creation skills, just a software developer. The original font, [Comic Shanns](https://github.com/shannpersand/comic-shanns), is patched using a Python script, [`generate.py`](generate.py).
## Usage ## Usage
You can download it and install it like any other font. You can download it and install it like any other font.
@ -16,18 +19,5 @@ Like if someone made a dumbass version of Comic Sans that is monospaced.
![image 2](https://user-images.githubusercontent.com/4615568/44279592-ca292e00-a206-11e8-9278-4a7566425c0c.png) ![image 2](https://user-images.githubusercontent.com/4615568/44279592-ca292e00-a206-11e8-9278-4a7566425c0c.png)
![image](https://user-images.githubusercontent.com/4615568/44279593-ca292e00-a206-11e8-9b25-a4533b50d471.png) ![image](https://user-images.githubusercontent.com/4615568/44279593-ca292e00-a206-11e8-9b25-a4533b50d471.png)
## What's in it? ## License
`ABCDEFGHIJKLMNOPQRSTUVWXYZ` It is licensed under the [MIT License](LICENSE).
`abcdefghijklmnopqrstuvwxyz`
`1234567890`
`~!@#$%^&*()-—+=;:"'<>,.?/\|[]{}?`
---
### I need help with it...
File an issue, we'll see.
### License
It is licensed under the MIT License.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,11 +1,17 @@
#!/usr/bin/env python2 #!/usr/bin/env python2
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
"""Update the glyph metrics so that they all really have the same size.""" """
Generates the Comic Mono font files based on Comic Shanns font.
# Based on Required files:
# - monospacifier: https://github.com/cpitclaudel/monospacifier/blob/master/monospacifier.py - vendor/comic-shanns.otf
# - YosemiteAndElCapitanSystemFontPatcher: https://github.com/dtinth/YosemiteAndElCapitanSystemFontPatcher/blob/master/bin/patch - vendor/Cousine-Regular.ttf
Based on:
- monospacifier: https://github.com/cpitclaudel/monospacifier/blob/master/monospacifier.py
- YosemiteAndElCapitanSystemFontPatcher: https://github.com/dtinth/YosemiteAndElCapitanSystemFontPatcher/blob/master/bin/patch
"""
import os import os
import re import re
@ -21,7 +27,7 @@ import unicodedata
def height(font): def height(font):
return float(font.capHeight) return float(font.capHeight)
def adjust_height(source, template): def adjust_height(source, template, scale):
source.selection.all() source.selection.all()
source.transform(psMat.scale(height(template) / height(source))) source.transform(psMat.scale(height(template) / height(source)))
for attr in ['ascent', 'descent', for attr in ['ascent', 'descent',
@ -34,10 +40,10 @@ def adjust_height(source, template):
'os2_typodescent', 'os2_typodescent_add', 'os2_typodescent', 'os2_typodescent_add',
]: ]:
setattr(source, attr, getattr(template, attr)) setattr(source, attr, getattr(template, attr))
source.transform(psMat.scale(0.9)) source.transform(psMat.scale(scale))
font = fontforge.open('comic-shanns.otf') font = fontforge.open('vendor/comic-shanns.otf')
ref = fontforge.open('vendor/Menlo.ttc') ref = fontforge.open('vendor/Cousine-Regular.ttf')
for g in font.glyphs(): for g in font.glyphs():
uni = g.unicode uni = g.unicode
category = unicodedata.category(unichr(uni)) if 0 <= uni <= sys.maxunicode else None category = unicodedata.category(unichr(uni)) if 0 <= uni <= sys.maxunicode else None
@ -49,10 +55,20 @@ for g in font.glyphs():
g.right_side_bearing += delta - g.left_side_bearing g.right_side_bearing += delta - g.left_side_bearing
g.width = target_width g.width = target_width
adjust_height(font, ref) font.familyname = 'Comic Mono'
font.version = '0.1.1'
font.comment = 'https://github.com/dtinth/comic-mono-font'
font.copyright = 'https://github.com/dtinth/comic-mono-font/blob/master/LICENSE'
adjust_height(font, ref, 0.875)
font.sfnt_names = [] # Get rid of 'Prefered Name' etc. font.sfnt_names = [] # Get rid of 'Prefered Name' etc.
font.fontname = 'Comic Shanns dtinth' font.fontname = 'ComicMono'
font.familyname = 'Comic Shanns dtinth' font.fullname = 'Comic Mono'
font.fullname = 'Comic Shanns dtinth' font.generate('ComicMono.ttf')
font.generate('comic-shanns-dtinth.otf')
font.generate('comic-shanns-dtinth.ttf') font.selection.all()
font.fontname = 'ComicMono-Bold'
font.fullname = 'Comic Mono Bold'
font.weight = 'Bold'
font.changeWeight(32, "LCG", 0, 0, "squish")
font.generate('ComicMono-Bold.ttf')