Merge pull request #174 from jpirnay/feat-extendedcharset
feat: Extend font character range
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+124
-191
@@ -14,23 +14,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Alegreya/Alegreya_10.cpfont",
|
||||
"size": 314326
|
||||
"size": 254633
|
||||
},
|
||||
{
|
||||
"name": "Alegreya/Alegreya_12.cpfont",
|
||||
"size": 393854
|
||||
"size": 319082
|
||||
},
|
||||
{
|
||||
"name": "Alegreya/Alegreya_14.cpfont",
|
||||
"size": 485840
|
||||
"size": 392855
|
||||
},
|
||||
{
|
||||
"name": "Alegreya/Alegreya_16.cpfont",
|
||||
"size": 595370
|
||||
"size": 479125
|
||||
},
|
||||
{
|
||||
"name": "Alegreya/Alegreya_18.cpfont",
|
||||
"size": 717674
|
||||
"size": 575909
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -46,23 +46,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Arimo/Arimo_10.cpfont",
|
||||
"size": 348294
|
||||
"size": 388843
|
||||
},
|
||||
{
|
||||
"name": "Arimo/Arimo_12.cpfont",
|
||||
"size": 445610
|
||||
"size": 502675
|
||||
},
|
||||
{
|
||||
"name": "Arimo/Arimo_14.cpfont",
|
||||
"size": 566018
|
||||
"size": 637946
|
||||
},
|
||||
{
|
||||
"name": "Arimo/Arimo_16.cpfont",
|
||||
"size": 690286
|
||||
"size": 777763
|
||||
},
|
||||
{
|
||||
"name": "Arimo/Arimo_18.cpfont",
|
||||
"size": 840448
|
||||
"size": 951109
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -110,23 +110,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Bitter/Bitter_10.cpfont",
|
||||
"size": 328854
|
||||
"size": 283762
|
||||
},
|
||||
{
|
||||
"name": "Bitter/Bitter_12.cpfont",
|
||||
"size": 404985
|
||||
"size": 352284
|
||||
},
|
||||
{
|
||||
"name": "Bitter/Bitter_14.cpfont",
|
||||
"size": 495408
|
||||
"size": 430628
|
||||
},
|
||||
{
|
||||
"name": "Bitter/Bitter_16.cpfont",
|
||||
"size": 597142
|
||||
"size": 517782
|
||||
},
|
||||
{
|
||||
"name": "Bitter/Bitter_18.cpfont",
|
||||
"size": 715219
|
||||
"size": 615582
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -142,23 +142,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Charis/Charis_10.cpfont",
|
||||
"size": 337367
|
||||
"size": 338639
|
||||
},
|
||||
{
|
||||
"name": "Charis/Charis_12.cpfont",
|
||||
"size": 417485
|
||||
"size": 419052
|
||||
},
|
||||
{
|
||||
"name": "Charis/Charis_14.cpfont",
|
||||
"size": 532708
|
||||
"size": 534581
|
||||
},
|
||||
{
|
||||
"name": "Charis/Charis_16.cpfont",
|
||||
"size": 656012
|
||||
"size": 658207
|
||||
},
|
||||
{
|
||||
"name": "Charis/Charis_18.cpfont",
|
||||
"size": 843707
|
||||
"size": 846360
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -174,23 +174,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Gelasio/Gelasio_10.cpfont",
|
||||
"size": 214500
|
||||
"size": 227040
|
||||
},
|
||||
{
|
||||
"name": "Gelasio/Gelasio_12.cpfont",
|
||||
"size": 280544
|
||||
"size": 298752
|
||||
},
|
||||
{
|
||||
"name": "Gelasio/Gelasio_14.cpfont",
|
||||
"size": 357582
|
||||
"size": 382806
|
||||
},
|
||||
{
|
||||
"name": "Gelasio/Gelasio_16.cpfont",
|
||||
"size": 447480
|
||||
"size": 479436
|
||||
},
|
||||
{
|
||||
"name": "Gelasio/Gelasio_18.cpfont",
|
||||
"size": 548094
|
||||
"size": 589924
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -206,23 +206,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "GentiumBookPlus/GentiumBookPlus_10.cpfont",
|
||||
"size": 398510
|
||||
"size": 324302
|
||||
},
|
||||
{
|
||||
"name": "GentiumBookPlus/GentiumBookPlus_12.cpfont",
|
||||
"size": 519063
|
||||
"size": 420404
|
||||
},
|
||||
{
|
||||
"name": "GentiumBookPlus/GentiumBookPlus_14.cpfont",
|
||||
"size": 645720
|
||||
"size": 519293
|
||||
},
|
||||
{
|
||||
"name": "GentiumBookPlus/GentiumBookPlus_16.cpfont",
|
||||
"size": 800427
|
||||
"size": 643507
|
||||
},
|
||||
{
|
||||
"name": "GentiumBookPlus/GentiumBookPlus_18.cpfont",
|
||||
"size": 983908
|
||||
"size": 794387
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -334,23 +334,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Inter/Inter_10.cpfont",
|
||||
"size": 530150
|
||||
"size": 466300
|
||||
},
|
||||
{
|
||||
"name": "Inter/Inter_12.cpfont",
|
||||
"size": 659788
|
||||
"size": 578248
|
||||
},
|
||||
{
|
||||
"name": "Inter/Inter_14.cpfont",
|
||||
"size": 807250
|
||||
"size": 702886
|
||||
},
|
||||
{
|
||||
"name": "Inter/Inter_16.cpfont",
|
||||
"size": 982216
|
||||
"size": 851741
|
||||
},
|
||||
{
|
||||
"name": "Inter/Inter_18.cpfont",
|
||||
"size": 1175576
|
||||
"size": 1015069
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -398,23 +398,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Literata/Literata_10.cpfont",
|
||||
"size": 497119
|
||||
"size": 413941
|
||||
},
|
||||
{
|
||||
"name": "Literata/Literata_12.cpfont",
|
||||
"size": 583306
|
||||
"size": 478367
|
||||
},
|
||||
{
|
||||
"name": "Literata/Literata_14.cpfont",
|
||||
"size": 691897
|
||||
"size": 558295
|
||||
},
|
||||
{
|
||||
"name": "Literata/Literata_16.cpfont",
|
||||
"size": 816373
|
||||
"size": 649363
|
||||
},
|
||||
{
|
||||
"name": "Literata/Literata_18.cpfont",
|
||||
"size": 1017583
|
||||
"size": 798979
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -430,23 +430,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Lora/Lora_10.cpfont",
|
||||
"size": 244674
|
||||
"size": 245328
|
||||
},
|
||||
{
|
||||
"name": "Lora/Lora_12.cpfont",
|
||||
"size": 302601
|
||||
"size": 303403
|
||||
},
|
||||
{
|
||||
"name": "Lora/Lora_14.cpfont",
|
||||
"size": 369710
|
||||
"size": 370703
|
||||
},
|
||||
{
|
||||
"name": "Lora/Lora_16.cpfont",
|
||||
"size": 453301
|
||||
"size": 454510
|
||||
},
|
||||
{
|
||||
"name": "Lora/Lora_18.cpfont",
|
||||
"size": 572188
|
||||
"size": 573700
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -482,35 +482,6 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "NotoSansArmenian",
|
||||
"description": "NotoSansArmenian",
|
||||
"styles": [
|
||||
"regular"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"name": "NotoSansArmenian/NotoSansArmenian_10.cpfont",
|
||||
"size": 8524
|
||||
},
|
||||
{
|
||||
"name": "NotoSansArmenian/NotoSansArmenian_12.cpfont",
|
||||
"size": 10057
|
||||
},
|
||||
{
|
||||
"name": "NotoSansArmenian/NotoSansArmenian_14.cpfont",
|
||||
"size": 12146
|
||||
},
|
||||
{
|
||||
"name": "NotoSansArmenian/NotoSansArmenian_16.cpfont",
|
||||
"size": 14418
|
||||
},
|
||||
{
|
||||
"name": "NotoSansArmenian/NotoSansArmenian_18.cpfont",
|
||||
"size": 16846
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "NotoSansCJK",
|
||||
"description": "Sans-serif (Chinese, Japanese, Korean)",
|
||||
@@ -521,35 +492,10 @@
|
||||
{
|
||||
"name": "NotoSansCJK/NotoSansCJK_10.cpfont",
|
||||
"size": 2567898
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "NotoSansEthiopic",
|
||||
"description": "NotoSansEthiopic",
|
||||
"styles": [
|
||||
"regular"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"name": "NotoSansEthiopic/NotoSansEthiopic_10.cpfont",
|
||||
"size": 35426
|
||||
},
|
||||
{
|
||||
"name": "NotoSansEthiopic/NotoSansEthiopic_12.cpfont",
|
||||
"size": 47174
|
||||
},
|
||||
{
|
||||
"name": "NotoSansEthiopic/NotoSansEthiopic_14.cpfont",
|
||||
"size": 60619
|
||||
},
|
||||
{
|
||||
"name": "NotoSansEthiopic/NotoSansEthiopic_16.cpfont",
|
||||
"size": 76276
|
||||
},
|
||||
{
|
||||
"name": "NotoSansEthiopic/NotoSansEthiopic_18.cpfont",
|
||||
"size": 94566
|
||||
"name": "NotoSansCJK/NotoSansCJK_12.cpfont",
|
||||
"size": 3611786
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -565,52 +511,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "NotoSansExtended/NotoSansExtended_10.cpfont",
|
||||
"size": 503189
|
||||
"size": 457693
|
||||
},
|
||||
{
|
||||
"name": "NotoSansExtended/NotoSansExtended_12.cpfont",
|
||||
"size": 636573
|
||||
"size": 577210
|
||||
},
|
||||
{
|
||||
"name": "NotoSansExtended/NotoSansExtended_14.cpfont",
|
||||
"size": 802460
|
||||
"size": 726543
|
||||
},
|
||||
{
|
||||
"name": "NotoSansExtended/NotoSansExtended_16.cpfont",
|
||||
"size": 989069
|
||||
"size": 893325
|
||||
},
|
||||
{
|
||||
"name": "NotoSansExtended/NotoSansExtended_18.cpfont",
|
||||
"size": 1198735
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "NotoSansGeorgian",
|
||||
"description": "NotoSansGeorgian",
|
||||
"styles": [
|
||||
"regular"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"name": "NotoSansGeorgian/NotoSansGeorgian_10.cpfont",
|
||||
"size": 12791
|
||||
},
|
||||
{
|
||||
"name": "NotoSansGeorgian/NotoSansGeorgian_12.cpfont",
|
||||
"size": 15397
|
||||
},
|
||||
{
|
||||
"name": "NotoSansGeorgian/NotoSansGeorgian_14.cpfont",
|
||||
"size": 18693
|
||||
},
|
||||
{
|
||||
"name": "NotoSansGeorgian/NotoSansGeorgian_16.cpfont",
|
||||
"size": 22464
|
||||
},
|
||||
{
|
||||
"name": "NotoSansGeorgian/NotoSansGeorgian_18.cpfont",
|
||||
"size": 26415
|
||||
"size": 1078120
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -628,6 +545,14 @@
|
||||
{
|
||||
"name": "NotoSansHangul/NotoSansHangul_12.cpfont",
|
||||
"size": 1614395
|
||||
},
|
||||
{
|
||||
"name": "NotoSansHangul/NotoSansHangul_14.cpfont",
|
||||
"size": 2134684
|
||||
},
|
||||
{
|
||||
"name": "NotoSansHangul/NotoSansHangul_16.cpfont",
|
||||
"size": 2628464
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -641,6 +566,10 @@
|
||||
{
|
||||
"name": "NotoSerifCJK/NotoSerifCJK_10.cpfont",
|
||||
"size": 2615442
|
||||
},
|
||||
{
|
||||
"name": "NotoSerifCJK/NotoSerifCJK_12.cpfont",
|
||||
"size": 3680444
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -656,19 +585,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "NotoSerifExtended/NotoSerifExtended_10.cpfont",
|
||||
"size": 525124
|
||||
"size": 475791
|
||||
},
|
||||
{
|
||||
"name": "NotoSerifExtended/NotoSerifExtended_12.cpfont",
|
||||
"size": 655418
|
||||
"size": 592995
|
||||
},
|
||||
{
|
||||
"name": "NotoSerifExtended/NotoSerifExtended_14.cpfont",
|
||||
"size": 820713
|
||||
"size": 741510
|
||||
},
|
||||
{
|
||||
"name": "NotoSerifExtended/NotoSerifExtended_16.cpfont",
|
||||
"size": 1006302
|
||||
"size": 909403
|
||||
},
|
||||
{
|
||||
"name": "NotoSerifExtended/NotoSerifExtended_18.cpfont",
|
||||
"size": 1132139
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -768,38 +701,6 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer",
|
||||
"description": "Thicker versionj of Source Serif",
|
||||
"styles": [
|
||||
"regular",
|
||||
"bold",
|
||||
"italic",
|
||||
"bolditalic"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_10.cpfont",
|
||||
"size": 253272
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_12.cpfont",
|
||||
"size": 303974
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_14.cpfont",
|
||||
"size": 366935
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_16.cpfont",
|
||||
"size": 435715
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_18.cpfont",
|
||||
"size": 536040
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "SourceSans3",
|
||||
"description": "Adobe humanist sans-serif (Latin, Greek, Cyrillic)",
|
||||
@@ -812,23 +713,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "SourceSans3/SourceSans3_10.cpfont",
|
||||
"size": 380803
|
||||
"size": 308750
|
||||
},
|
||||
{
|
||||
"name": "SourceSans3/SourceSans3_12.cpfont",
|
||||
"size": 470341
|
||||
"size": 376818
|
||||
},
|
||||
{
|
||||
"name": "SourceSans3/SourceSans3_14.cpfont",
|
||||
"size": 561177
|
||||
"size": 446470
|
||||
},
|
||||
{
|
||||
"name": "SourceSans3/SourceSans3_16.cpfont",
|
||||
"size": 669252
|
||||
"size": 528985
|
||||
},
|
||||
{
|
||||
"name": "SourceSans3/SourceSans3_18.cpfont",
|
||||
"size": 792752
|
||||
"size": 623347
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -844,23 +745,55 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "SourceSerif4/SourceSerif4_10.cpfont",
|
||||
"size": 302084
|
||||
"size": 302374
|
||||
},
|
||||
{
|
||||
"name": "SourceSerif4/SourceSerif4_12.cpfont",
|
||||
"size": 359428
|
||||
"size": 359785
|
||||
},
|
||||
{
|
||||
"name": "SourceSerif4/SourceSerif4_14.cpfont",
|
||||
"size": 429133
|
||||
"size": 429580
|
||||
},
|
||||
{
|
||||
"name": "SourceSerif4/SourceSerif4_16.cpfont",
|
||||
"size": 508479
|
||||
"size": 509015
|
||||
},
|
||||
{
|
||||
"name": "SourceSerif4/SourceSerif4_18.cpfont",
|
||||
"size": 599286
|
||||
"size": 599933
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer",
|
||||
"description": "Thicker version of Source Serif",
|
||||
"styles": [
|
||||
"regular",
|
||||
"bold",
|
||||
"italic",
|
||||
"bolditalic"
|
||||
],
|
||||
"files": [
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_10.cpfont",
|
||||
"size": 253560
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_12.cpfont",
|
||||
"size": 304329
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_14.cpfont",
|
||||
"size": 367372
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_16.cpfont",
|
||||
"size": 436241
|
||||
},
|
||||
{
|
||||
"name": "Sourcerer/Sourcerer_18.cpfont",
|
||||
"size": 536712
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -876,23 +809,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Spectral/Spectral_10.cpfont",
|
||||
"size": 254374
|
||||
"size": 255318
|
||||
},
|
||||
{
|
||||
"name": "Spectral/Spectral_12.cpfont",
|
||||
"size": 309829
|
||||
"size": 311041
|
||||
},
|
||||
{
|
||||
"name": "Spectral/Spectral_14.cpfont",
|
||||
"size": 368198
|
||||
"size": 369662
|
||||
},
|
||||
{
|
||||
"name": "Spectral/Spectral_16.cpfont",
|
||||
"size": 440277
|
||||
"size": 442045
|
||||
},
|
||||
{
|
||||
"name": "Spectral/Spectral_18.cpfont",
|
||||
"size": 544960
|
||||
"size": 547192
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -908,23 +841,23 @@
|
||||
"files": [
|
||||
{
|
||||
"name": "Vollkorn/Vollkorn_10.cpfont",
|
||||
"size": 338666
|
||||
"size": 353640
|
||||
},
|
||||
{
|
||||
"name": "Vollkorn/Vollkorn_12.cpfont",
|
||||
"size": 404708
|
||||
"size": 424365
|
||||
},
|
||||
{
|
||||
"name": "Vollkorn/Vollkorn_14.cpfont",
|
||||
"size": 486026
|
||||
"size": 508031
|
||||
},
|
||||
{
|
||||
"name": "Vollkorn/Vollkorn_16.cpfont",
|
||||
"size": 579106
|
||||
"size": 605607
|
||||
},
|
||||
{
|
||||
"name": "Vollkorn/Vollkorn_18.cpfont",
|
||||
"size": 682774
|
||||
"size": 716873
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -44,11 +44,18 @@ except ImportError:
|
||||
INTERVAL_PRESETS = {
|
||||
"ascii": [(0x0020, 0x007E)],
|
||||
"latin1": [(0x0080, 0x00FF)],
|
||||
"latin-ext": [(0x0020, 0x007E), (0x0080, 0x00FF), (0x0100, 0x024F),
|
||||
(0x1E00, 0x1EFF), (0x2000, 0x206F)],
|
||||
"greek": [(0x0370, 0x03FF), (0x1F00, 0x1FFF)],
|
||||
"cyrillic": [(0x0400, 0x04FF), (0x0500, 0x052F)],
|
||||
"georgian": [(0x10A0, 0x10FF), (0x2D00, 0x2D2F)],
|
||||
"latin-ext": [(0x0020, 0x007E), (0x0080, 0x00FF), (0x0100, 0x024F),
|
||||
(0x1E00, 0x1EFF), (0x2000, 0x206F)],
|
||||
"latin-cyrillic": [(0x0020, 0x007E), (0x0080, 0x00FF), (0x0100, 0x024F),
|
||||
(0x1E00, 0x1EFF), (0x2000, 0x206F),
|
||||
(0x0400, 0x04FF), (0x0500, 0x052F),
|
||||
(0x1C80, 0x1C8F), (0x2DE0, 0x2DFF), (0xA640, 0xA69F)],
|
||||
"greek": [(0x0370, 0x03FF), (0x1F00, 0x1FFF)],
|
||||
"greek-letters": [(0x0370, 0x03FF)],
|
||||
"musical-symbols": [(0x2660, 0x266F), (0x1D100, 0x1D1FF)],
|
||||
"cyrillic": [(0x0400, 0x04FF), (0x0500, 0x052F),
|
||||
(0x1C80, 0x1C8F), (0x2DE0, 0x2DFF), (0xA640, 0xA69F)],
|
||||
"georgian": [(0x10A0, 0x10FF), (0x2D00, 0x2D2F)],
|
||||
"armenian": [(0x0530, 0x058F)],
|
||||
"ethiopic": [(0x1200, 0x137F), (0x1380, 0x139F), (0x2D80, 0x2DDF)],
|
||||
"vietnamese": [(0x01A0, 0x01B0), (0x1EA0, 0x1EF9)],
|
||||
@@ -706,6 +713,9 @@ def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=F
|
||||
all_cps = set(g.code_point for g, _ in all_glyphs)
|
||||
|
||||
kern_map = extract_kerning_fonttools(fontfile, all_cps, ppem)
|
||||
# SMP codepoints (> U+FFFF) cannot be stored in the uint16 kern codepoint
|
||||
# field; drop them before class derivation to avoid struct.error.
|
||||
kern_map = {(lcp, rcp): v for (lcp, rcp), v in kern_map.items() if lcp <= 0xFFFF and rcp <= 0xFFFF}
|
||||
print(f" [{style_label}] Kerning: {len(kern_map)} pairs extracted", file=sys.stderr)
|
||||
|
||||
(kern_left_classes, kern_right_classes, kern_matrix,
|
||||
@@ -718,6 +728,8 @@ def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=F
|
||||
f"{matrix_size + entries_size} bytes", file=sys.stderr)
|
||||
|
||||
ligature_pairs = extract_ligatures_fonttools(fontfile, all_cps)
|
||||
# SMP codepoints overflow the uint32 packed-pair encoding; drop them.
|
||||
ligature_pairs = [(pk, lc) for pk, lc in ligature_pairs if (pk >> 16) <= 0xFFFF and (pk & 0xFFFF) <= 0xFFFF]
|
||||
if len(ligature_pairs) > 255:
|
||||
print(f" [{style_label}] WARNING: {len(ligature_pairs)} ligature pairs exceeds uint8_t max (255), truncating",
|
||||
file=sys.stderr)
|
||||
|
||||
@@ -35,7 +35,7 @@ families:
|
||||
|
||||
- name: Literata
|
||||
description: "Screen-optimized serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/googlefonts/literata/main/fonts/ttf/Literata-Regular.ttf"}
|
||||
@@ -45,7 +45,7 @@ families:
|
||||
|
||||
- name: SourceSerif4
|
||||
description: "Adobe transitional serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/adobe-fonts/source-serif/release/TTF/SourceSerif4-Regular.ttf"}
|
||||
@@ -55,7 +55,7 @@ families:
|
||||
|
||||
- name: NotoSerifExtended
|
||||
description: "Serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/notofonts/NotoSerif/main/fonts/ttf/unhinted/instance_ttf/NotoSerif-Regular.ttf"}
|
||||
@@ -65,7 +65,7 @@ families:
|
||||
|
||||
- name: Merriweather
|
||||
description: "Warm serif for long-form reading (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/SorkinType/Merriweather/master/fonts/ttf/Merriweather-Regular.ttf"}
|
||||
@@ -75,7 +75,7 @@ families:
|
||||
|
||||
- name: Lora
|
||||
description: "Calligraphic serif for literary reading (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/cyrealtype/Lora-Cyrillic/main/fonts/ttf/Lora-Regular.ttf"}
|
||||
@@ -85,7 +85,7 @@ families:
|
||||
|
||||
- name: Gelasio
|
||||
description: "Readable old-style serif (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/gelasio/Gelasio%5Bwght%5D.ttf", variable: {wght: 400}}
|
||||
@@ -95,7 +95,7 @@ families:
|
||||
|
||||
- name: GentiumBookPlus
|
||||
description: "Scholarly serif with wide Unicode coverage (Latin, Greek, Cyrillic, IPA)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/gentiumbookplus/GentiumBookPlus-Regular.ttf"}
|
||||
@@ -105,7 +105,7 @@ families:
|
||||
|
||||
- name: IBMPlexSerif
|
||||
description: "Professional serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/ibmplexserif/IBMPlexSerif-Regular.ttf"}
|
||||
@@ -115,7 +115,7 @@ families:
|
||||
|
||||
- name: Bitter
|
||||
description: "Slab serif designed for e-ink (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/bitter/Bitter%5Bwght%5D.ttf", variable: {wght: 400}}
|
||||
@@ -125,7 +125,7 @@ families:
|
||||
|
||||
- name: Readerly
|
||||
description: "Similar to Bookerly (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/nicoverbruggen/ebook-fonts/main/fonts/core/Readerly-Regular.ttf"}
|
||||
@@ -135,7 +135,7 @@ families:
|
||||
|
||||
- name: Charis
|
||||
description: "Great universal pick"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/nicoverbruggen/ebook-fonts/main/fonts/core/NV_Charis-Regular.ttf"}
|
||||
@@ -144,8 +144,8 @@ families:
|
||||
bolditalic: {url: "https://raw.githubusercontent.com/nicoverbruggen/ebook-fonts/main/fonts/core/NV_Charis-BoldItalic.ttf"}
|
||||
|
||||
- name: Sourcerer
|
||||
description: "Thicker versionj of Source Serif"
|
||||
intervals: latin-ext,cyrillic
|
||||
description: "Thicker version of Source Serif"
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/nicoverbruggen/ebook-fonts/main/fonts/core/Sourcerer-Regular.ttf"}
|
||||
@@ -155,7 +155,7 @@ families:
|
||||
|
||||
- name: Spectral
|
||||
description: "A new and versatile serif face (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/spectral/Spectral-Regular.ttf"}
|
||||
@@ -165,7 +165,7 @@ families:
|
||||
|
||||
- name: Vollkorn
|
||||
description: "The free and healthy typeface for bread and butter use (Latin, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/vollkorn/Vollkorn%5Bwght%5D.ttf", variable: {wght: 400}}
|
||||
@@ -177,7 +177,7 @@ families:
|
||||
|
||||
- name: NotoSansExtended
|
||||
description: "Sans-serif (Latin, Greek, Cyrillic, Georgian, Armenian, Ethiopic)"
|
||||
intervals: latin-ext,greek,cyrillic,georgian,armenian,ethiopic
|
||||
intervals: latin-cyrillic,greek-letters,georgian,armenian,ethiopic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {path: "builtinFonts/source/NotoSans/NotoSans-Regular.ttf"}
|
||||
@@ -187,7 +187,7 @@ families:
|
||||
|
||||
- name: Arimo
|
||||
description: "Metric-compatible with Arial (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,cyrillic
|
||||
intervals: latin-cyrillic,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/arimo/Arimo%5Bwght%5D.ttf", variable: {wght: 400}}
|
||||
@@ -197,7 +197,7 @@ families:
|
||||
|
||||
- name: Inter
|
||||
description: "Modern sans-serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/inter/Inter%5Bopsz%2Cwght%5D.ttf", variable: {wght: 400, opsz: 14}}
|
||||
@@ -207,7 +207,7 @@ families:
|
||||
|
||||
- name: SourceSans3
|
||||
description: "Adobe humanist sans-serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/adobe-fonts/source-sans/release/TTF/SourceSans3-Regular.ttf"}
|
||||
@@ -217,7 +217,7 @@ families:
|
||||
|
||||
- name: IBMPlexSans
|
||||
description: "IBM corporate sans-serif (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/IBM/plex/master/packages/plex-sans/fonts/complete/ttf/IBMPlexSans-Regular.ttf"}
|
||||
@@ -227,7 +227,7 @@ families:
|
||||
|
||||
- name: Alegreya
|
||||
description: "Calligraphic serif/display (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/alegreya/Alegreya%5Bwght%5D.ttf", variable: {wght: 400}}
|
||||
@@ -239,7 +239,7 @@ families:
|
||||
|
||||
- name: IBMPlexMono
|
||||
description: "Monospace for code and technical reading (Latin, Greek, Cyrillic)"
|
||||
intervals: latin-ext,greek,cyrillic
|
||||
intervals: latin-cyrillic,greek-letters,musical-symbols
|
||||
sizes: [10, 12, 14, 16, 18]
|
||||
styles:
|
||||
regular: {url: "https://raw.githubusercontent.com/google/fonts/main/ofl/ibmplexmono/IBMPlexMono-Regular.ttf"}
|
||||
|
||||
Reference in New Issue
Block a user