28 Commits
Author SHA1 Message Date
Idrees b8908173df Merge pull request #91 from IdreesInc/90-aphostrope-on-some-letters-are-wrong
Fix ť and ď
2022-12-29 14:02:04 -05:00
Idrees Hassan 0ad78e0a3e Fix ť and ď 2022-12-29 14:01:52 -05:00
Idrees a897bc0083 Merge pull request #87 from IdreesInc/prepare-for-v2.1
Bump version and update glyphs preview
2022-12-28 23:30:06 -05:00
Idrees Hassan f1a9d2fc74 Bump version and update glyphs preview 2022-12-28 23:29:50 -05:00
Idrees 97603fd8ad Merge pull request #86 from IdreesInc/64-support-for-latvian
Add Latvian glyphs
2022-12-28 23:23:11 -05:00
Idrees Hassan 4cca081921 Add Latvian glyphs 2022-12-28 23:22:49 -05:00
Idrees e1ebb386d6 Merge pull request #85 from IdreesInc/49-include-some-more-unicode-symbols-sometimes-used-in-coding
Add some glyphs used in PureScript
2022-12-28 23:06:49 -05:00
Idrees Hassan 0ff70751e7 Add some glyphs used in PureScript 2022-12-28 23:06:31 -05:00
Idrees 0cdc990d4d Merge pull request #84 from IdreesInc/58-missing-romanian-characters
Add Romanian glyphs
2022-12-28 22:40:28 -05:00
Idrees Hassan acc94e9b6a Add Romanian glyphs 2022-12-28 22:40:15 -05:00
Idrees 5dcac8c196 Merge pull request #83 from IdreesInc/29-support-for-polish
Add Polish glyphs
2022-12-28 22:18:59 -05:00
Idrees Hassan 2c5b9e8830 Add Polish glyphs 2022-12-28 22:18:31 -05:00
Idrees ba0a5ebd21 Merge pull request #82 from IdreesInc/13-provide-nerdfont-version
Update .gitignore
2022-12-28 21:50:34 -05:00
Idrees Hassan b4800e2afa Update .gitignore 2022-12-28 21:49:51 -05:00
Idrees 7ae09a1004 Create CONTRIBUTING.md 2022-12-28 20:57:12 -05:00
Idrees 88cf2f83d9 Update issue templates 2022-12-28 20:35:20 -05:00
Idrees 785c13c1a9 Update issue templates 2022-12-28 20:31:39 -05:00
Idrees 55e32cac8a Merge pull request #81 from IdreesInc/10-non-ligature-version
10 Non ligature version
2022-12-28 19:23:02 -05:00
Idrees Hassan e8742d37ad Clean up ligature-free generation 2022-12-28 19:22:25 -05:00
Idrees 2232694429 Merge pull request #78 from Ciubix8513/main
Automated exporting with and without ligatures
2022-12-28 19:11:45 -05:00
Idrees 95762ac3ff Merge pull request #80 from IdreesInc/15-turkish-letters
Add Ş and ş
2022-12-28 19:03:54 -05:00
Idrees Hassan 1a6e6abfca Add Ş and ş 2022-12-28 19:03:41 -05:00
Idrees 1dcffa0b43 Merge pull request #79 from IdreesInc/5-adding-œ-letter
Add Œ and œ
2022-12-28 18:50:22 -05:00
Idrees Hassan 3ffa57f4c8 Add Œ and œ 2022-12-28 18:50:02 -05:00
Luna b6d9da205d Automated exporting with and without ligatures 2022-12-28 12:01:00 +03:00
Idrees 26bfacb78b Merge pull request #76 from Ciubix8513/main
Fixed font not generating if output directory doesn't exist
2022-12-27 20:04:22 -05:00
Luna 37e82e5648 Made output dir local 2022-12-28 04:03:18 +03:00
Luna bfc605cbb9 Fixed font not generating if output directory doesn't exist 2022-12-28 03:54:30 +03:00
9 changed files with 624 additions and 21 deletions

No files matched your search

@@ -0,0 +1,12 @@
---
name: Additional Glyphs Request
about: Suggest some characters/glyphs/ligatures to be added to Monocraft
title: ''
labels: additional-glyphs
assignees: ''
---
**Which characters/ligatures/etc. would you like added to Monocraft?**
*Include any details about your request here. If you would like certain characters to be added to the font, please list every single character in plain text (not just an image, though images can be included) that you would like added. Don't forget to include upper and lower case if applicable.*
+26
View File
@@ -0,0 +1,26 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: potential-bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Operating system**
Windows, MacOS, etc.
**Software**
VS Code, IntelliJ, etc.
**Additional context**
Add any other context about the problem here.
+11
View File
@@ -0,0 +1,11 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''
---
**What feature would you like added to Monocraft?**
*Note that if you would like to request additional characters/glyphs/ligatures to be added, please use the "Additional Glyphs Request" template instead*
+1 -1
View File
@@ -2,4 +2,4 @@
.DS_Store
src/__pycache__
dist/
src/build-font.sh
build/
+15
View File
@@ -0,0 +1,15 @@
# Contributing to Monocraft
Contributions to the font are always welcome, though please be sure to adhere to these guidelines if you want your changes to be approved.
## Guiding Principles of Monocraft
- Characters must look exactly the same as they do in Minecraft
- The only exception is if the character is too wide to fit in the font and still be monospaced. In this case, we would modify the glyph to fit if possible. Such modifications will likely need to be run by [@IdreesInc](https://github.com/IdreesInc) first to ensure that the style is kept consistent with other glyphs
- Ligatures must always be helpful and never annoying
- This means that ligatures that might work in one context (like <= as an arrow) but fail in another (like when <= should instead be "less than or equal to") should not be added to Monocraft
- As a rule, it's usually better to only add ligatures that someone might expect rather than every possible ligature so as to avoid ligatures appearing out of place
- The code that generates Monocraft should be clean, consistent, and maintainable
- If you feel as if a feature would be hard to add cleanly, contact [@IdreesInc](https://github.com/IdreesInc) instead and I'll see if we can work something out
So long as you keep in line with the above principles, your PR is much more likely to be merged. Good luck!
+10 -8
View File
@@ -9,20 +9,22 @@ a b c d e f g h i j k l m n o p q r s t u v w x y z
¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á
Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á
â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý ÿ Ā ā Ă
ă Ć ć Ĉ ĉ Ċ ċ Č č Ď ď Ē ē Ĕ ĕ Ė ė Ě ě Ĝ ĝ Ğ ğ Ġ ġ Ĥ ĥ Ĩ ĩ Ī ī Ĭ
ĭ İ Ĵ ĵ Ĺ ĺ Ľ ľ Ń ń Ň ň Ō ō Ŏ ŏ Ő ő Ŕ ŕ Ř ř Ś ś Ŝ ŝ Š š Ť ť Ũ ũ
Ū ū Ŭ ŭ Ů ů Ű ű Ŵ ŵ Ŷ ŷ Ÿ Ź ź Ż ż Ž
ă Ą ą Ć ć Ĉ ĉ Ċ ċ Č č Ď ď Ē ē Ĕ ĕ Ė ė Ę ę Ě ě Ĝ ĝ Ğ ğ Ġ ġ Ģ ģ Ĥ
ĥ Ĩ ĩ Ī ī Ĭ ĭ İ Ĵ ĵ Ķ ķ Ĺ ĺ Ļ ļ Ľ ľ Ł ł Ń ń Ņ ņ Ň ň Ō ō Ŏ ŏ Ő ő
Œ œ Ŕ ŕ Ř ř Ś ś Ŝ ŝ Ş ş Š š Ť ť Ũ ũ Ū ū Ŭ ŭ Ů ů Ű ű Ŵ ŵ Ŷ ŷ Ÿ Ź
ź Ż ż Ž
ž Ǎ ǎ Ǐ ǐ Ǒ ǒ Ǔ ǔ Ǣ ǣ Ǧ ǧ Ǩ ǩ ǰ Ǵ ǵ Ǹ ǹ Ǽ ǽ Ȟ ȟ Ȧ ȧ Ȯ ȯ Ȳ ȳ Ѐ Ё
Ђ Ѓ Є Ѕ І Ї Ј Љ Њ Ћ Ќ Ѝ Ў Џ А Б В Г Д Е Ж З И Й К Л М Н О П Р С
Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я а б в г д е ж з и й к л м н о п р с
т у ф х ц ч ш щ ъ ы ь э ю я ѐ ё ђ ѓ є ѕ і ї ј љ њ ћ ќ ѝ ў џ
ž Ǎ ǎ Ǐ ǐ Ǒ ǒ Ǔ ǔ Ǣ ǣ Ǧ ǧ Ǩ ǩ ǰ Ǵ ǵ Ǹ ǹ Ǽ ǽ Ș ș Ț ț Ȟ ȟ Ȧ ȧ Ȯ ȯ
Ȳ ȳ Ѐ Ё Ђ Ѓ Є Ѕ І Ї Ј Љ Њ Ћ Ќ Ѝ Ў Џ А Б В Г Д Е Ж З И Й К Л М Н
О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я а б в г д е ж з и й к л м н
о п р с т у ф х ц ч ш щ ъ ы ь э ю я ѐ ё ђ ѓ є ѕ і ї ј љ њ ћ ќ ѝ
ў џ
Ӂ ӂ Ӑ ӑ Ӓ ӓ Ӗ ӗ Ӝ ӝ Ӟ ӟ Ӣ ӣ Ӥ ӥ Ӧ ӧ Ӭ ӭ Ӯ ӯ Ӱ ӱ Ӳ ӳ Ӵ ӵ Ӹ ӹ Ḃ ḃ
Ḋ ḋ Ḟ ḟ Ḡ ḡ Ḣ ḣ Ḧ ḧ Ḱ ḱ Ḿ ḿ Ṁ ṁ Ṅ ṅ Ṕ ṕ Ṗ ṗ Ṙ ṙ Ṡ ṡ Ṫ ṫ Ṽ ṽ Ẁ ẁ
Ẃ ẃ Ẅ ẅ Ẇ ẇ Ẋ ẋ Ẍ ẍ Ẏ ẏ Ẑ ẑ ẗ ẘ ẙ Ẽ ẽ Ỳ ỳ Ỹ ỹ
€ ☺ ☻ ♥ ⨰ ⸚
€ ← ↑ → ↓ ⇐ ⇑ ⇒ ⇓ ∀ ∷ ☺ ☻ ♥ ⨰ ⸚
--- Ligatures ---
 = = -> ==
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 240 KiB

After

Width:  |  Height:  |  Size: 606 KiB

+538 -7
View File
@@ -1908,13 +1908,13 @@
"name": "latin_small_letter_ae",
"codepoint": 230,
"pixels": [
[0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0],
[0, 1, 1, 0, 1, 0],
[0, 0, 0, 1, 0, 1],
[0, 1, 1, 1, 1, 1],
[1, 0, 0, 1, 0, 0],
[0, 1, 1, 1, 1, 1]
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 0, 1, 0],
[0, 0, 1, 0, 1],
[0, 1, 1, 1, 1],
[1, 0, 1, 0, 0],
[0, 1, 1, 1, 1]
]
},
{
@@ -2035,6 +2035,122 @@
[0, 1, 1, 1, 0]
]
},
{
"character": "Ą",
"name": "latin_capital_letter_a_with_ogonek",
"codepoint": 260,
"pixels": [
[0, 1, 1, 1, 0],
[1, 0, 0, 0, 1],
[1, 1, 1, 1, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 0, 0, 1, 0],
[0, 0, 0, 0, 1]
],
"descent": 2
},
{
"character": "ą",
"name": "latin_small_letter_a_with_ogonek",
"codepoint": 261,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 0, 0, 1]
],
"descent": 2
},
{
"character": "ď",
"name": "latin_small_letter_d_with_caron",
"codepoint": 271,
"pixels": [
[0, 0, 0, 1, 0, 1],
[0, 0, 0, 1, 0, 1],
[0, 1, 1, 1, 0, 0],
[1, 0, 0, 1, 0, 0],
[1, 0, 0, 1, 0, 0],
[1, 0, 0, 1, 0, 0],
[0, 1, 1, 1, 0, 0]
]
},
{
"character": "Ę",
"name": "latin_capital_letter_e_with_ogonek",
"codepoint": 280,
"pixels": [
[1, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[1, 1, 1, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 1, 1, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 0, 0, 1]
],
"descent": 2
},
{
"character": "ę",
"name": "latin_small_letter_e_with_ogonek",
"codepoint": 281,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[1, 0, 0, 0, 1],
[1, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 0, 0, 1]
],
"descent": 2
},
{
"character": "Ģ",
"name": "latin_capital_letter_g_with_cedilla",
"codepoint": 290,
"pixels": [
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[1, 0, 0, 1, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "ģ",
"name": "latin_small_letter_g_with_cedilla",
"codepoint": 291,
"pixels": [
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 1],
[0, 0, 0, 0, 1],
[1, 1, 1, 1, 0]
],
"descent": 1
},
{
"character": "ĩ",
"name": "latin_small_letter_i_with_tilde",
@@ -2096,6 +2212,213 @@
],
"descent": 1
},
{
"character": "Ķ",
"name": "latin_capital_letter_k_with_cedilla",
"codepoint": 310,
"pixels": [
[1, 0, 0, 0, 1],
[1, 0, 0, 1, 0],
[1, 1, 1, 0, 0],
[1, 0, 0, 1, 0],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "ķ",
"name": "latin_small_letter_k_with_cedilla",
"codepoint": 311,
"pixels": [
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 1, 0],
[1, 0, 1, 0, 0],
[1, 1, 0, 0, 0],
[1, 0, 1, 0, 0],
[1, 0, 0, 1, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "Ļ",
"name": "latin_capital_letter_l_with_cedilla",
"codepoint": 315,
"pixels": [
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 1, 1, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0]
],
"descent": 2
},
{
"character": "ļ",
"name": "latin_small_letter_l_with_cedilla",
"codepoint": 316,
"pixels": [
[0, 1, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0]
],
"descent": 2
},
{
"character": "Ł",
"name": "latin_capital_letter_l_with_stroke",
"codepoint": 321,
"pixels": [
[0, 1, 0, 0, 0],
[0, 1, 0, 0, 0],
[0, 1, 0, 1, 0],
[0, 1, 1, 0, 0],
[1, 1, 0, 0, 0],
[0, 1, 0, 0, 0],
[0, 1, 1, 1, 1]
]
},
{
"character": "ł",
"name": "latin_small_letter_l_with_stroke",
"codepoint": 322,
"pixels": [
[0, 1, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 1],
[0, 0, 1, 1, 0],
[0, 1, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 1, 1]
]
},
{
"character": "Ņ",
"name": "latin_capital_letter_n_with_cedilla",
"codepoint": 325,
"pixels": [
[1, 0, 0, 0, 1],
[1, 1, 0, 0, 1],
[1, 0, 1, 0, 1],
[1, 0, 0, 1, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "ņ",
"name": "latin_small_letter_n_with_cedilla",
"codepoint": 326,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[1, 1, 1, 1, 0],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "Œ",
"name": "latin_capital_ligature_oe",
"codepoint": 338,
"pixels": [
[0, 1, 0, 1, 1],
[1, 0, 1, 0, 0],
[1, 0, 1, 1, 0],
[1, 0, 1, 0, 0],
[1, 0, 1, 0, 0],
[1, 0, 1, 0, 0],
[0, 1, 0, 1, 1]
]
},
{
"character": "œ",
"name": "latin_small_ligature_oe",
"codepoint": 339,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 0, 1, 0],
[1, 0, 1, 0, 1],
[1, 0, 1, 1, 1],
[1, 0, 1, 0, 0],
[0, 1, 0, 1, 1]
]
},
{
"character": "Ş",
"name": "latin_capital_letter_s_with_cedilla",
"codepoint": 350,
"pixels": [
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[0, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 0],
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0]
],
"descent": 2
},
{
"character": "ş",
"name": "latin_small_letter_s_with_cedilla",
"codepoint": 351,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[1, 1, 1, 1, 0],
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0]
],
"descent": 2
},
{
"character": "ť",
"name": "latin_small_letter_t_with_caron",
"codepoint": 357,
"pixels": [
[0, 0, 0, 0, 1],
[0, 0, 1, 0, 1],
[0, 0, 1, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 1, 1]
]
},
{
"character": "Ů",
"name": "latin_capital_letter_u_with_ring_above",
@@ -2136,6 +2459,74 @@
],
"descent": 1
},
{
"character": "Ș",
"name": "latin_capital_letter_s_with_comma_below",
"codepoint": 536,
"pixels": [
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[0, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "ș",
"name": "latin_small_letter_s_with_comma_below",
"codepoint": 537,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[1, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "Ț",
"name": "latin_capital_letter_t_with_comma_below",
"codepoint": 538,
"pixels": [
[1, 1, 1, 1, 1],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "ț",
"name": "latin_small_letter_t_with_comma_below",
"codepoint": 539,
"pixels": [
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 1, 1],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0]
],
"descent": 2
},
{
"character": "Ѐ",
"name": "cyrillic_capital_letter_ie_with_grave",
@@ -3247,6 +3638,146 @@
[0, 0, 1, 1, 0]
]
},
{
"character": "←",
"name": "leftwards_arrow",
"codepoint": 8592,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 0, 0],
[1, 1, 1, 1, 1],
[0, 1, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "↑",
"name": "upwards_arrow",
"codepoint": 8593,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 1, 1, 0],
[1, 0, 1, 0, 1],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "→",
"name": "rightwards_arrow",
"codepoint": 8594,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 1, 0],
[1, 1, 1, 1, 1],
[0, 0, 0, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "↓",
"name": "downwards_arrow",
"codepoint": 8595,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[1, 0, 1, 0, 1],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "⇐",
"name": "leftwards_double_arrow",
"codepoint": 8656,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 1, 1, 1],
[1, 0, 0, 0, 0],
[0, 1, 1, 1, 1],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "⇑",
"name": "upwards_double_arrow",
"codepoint": 8657,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 1, 0],
[1, 1, 0, 1, 1],
[0, 1, 0, 1, 0],
[0, 1, 0, 1, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "⇒",
"name": "rightwards_double_arrow",
"codepoint": 8658,
"pixels": [
[0, 0, 0, 0, 0],
[0, 0, 1, 0, 0],
[1, 1, 1, 1, 0],
[0, 0, 0, 0, 1],
[1, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "⇓",
"name": "downwards_double_arrow",
"codepoint": 8659,
"pixels": [
[0, 0, 0, 0, 0],
[0, 1, 0, 1, 0],
[0, 1, 0, 1, 0],
[1, 1, 0, 1, 1],
[0, 1, 0, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
},
{
"character": "∀",
"name": "for_all",
"codepoint": 8704,
"pixels": [
[1, 0, 0, 0, 1],
[1, 0, 0, 0, 1],
[1, 1, 1, 1, 1],
[1, 0, 0, 0, 1],
[0, 1, 0, 1, 0],
[0, 1, 0, 1, 0],
[0, 0, 1, 0, 0]
]
},
{
"character": "∷",
"name": "proportion",
"codepoint": 8759,
"pixels": [
[0, 0, 0, 0, 0],
[1, 0, 0, 0, 1],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[1, 0, 0, 0, 1]
]
},
{
"character": "☺",
"name":"smiling_face",
+11 -5
View File
@@ -13,6 +13,7 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import os
import fontforge
import json
from generate_diacritics import generateDiacritics
@@ -34,7 +35,7 @@ def generateFont():
monocraft.fullname = "Monocraft"
monocraft.copyright = "Idrees Hassan, https://github.com/IdreesInc/Monocraft"
monocraft.encoding = "UnicodeFull"
monocraft.version = "2.1"
monocraft.version = "2.2"
monocraft.weight = "Medium"
monocraft.ascent = PIXEL_SIZE * 8
monocraft.descent = PIXEL_SIZE
@@ -58,19 +59,24 @@ def generateFont():
top += PIXEL_SIZE * character["diacriticSpace"]
drawGlyph(diacritic["pixels"], pen, 0, top)
monocraft[character["name"]].width = PIXEL_SIZE * 6
print(f"Generated {len(characters)} characters")
outputDir = "../dist/"
if not os.path.exists(outputDir):
os.makedirs(outputDir)
monocraft.generate(outputDir + "Monocraft-no-ligatures.ttf")
for ligature in ligatures:
lig = monocraft.createChar(-1, ligature["name"])
pen = monocraft[ligature["name"]].glyphPen()
drawCharacter(ligature, pen)
monocraft[ligature["name"]].width = PIXEL_SIZE * len(ligature["sequence"]) * 6
lig.addPosSub("ligatures-subtable", tuple(map(lambda codepoint: charactersByCodepoint[codepoint]["name"], ligature["sequence"])))
print(f"Generated {len(ligatures)} ligatures")
monocraft.generate("../dist/Monocraft.ttf")
monocraft.generate("../dist/Monocraft.otf")
monocraft.generate(outputDir + "Monocraft.ttf")
monocraft.generate(outputDir + "Monocraft.otf")
def drawCharacter(character, pen):
if "reference" in character: return drawCharacter(charactersByCodepoint[character["reference"]],pen)