forked from TakWolf-Deprecated/nico-font-tool
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgen_fonts.nim
62 lines (56 loc) · 1.51 KB
/
gen_fonts.nim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import os
import nico_font_tool
const fontsDir = "assets/fonts/"
const outputsDir = "examples/assets/fonts"
const outputsPaletteDir = joinPath(outputsDir, "palette")
const outputsRgbaDir = joinPath(outputsDir, "rgba")
removeDir(outputsDir)
createDir(outputsPaletteDir)
createDir(outputsRgbaDir)
proc convertFont(
fontFileName: string,
outputsName: string,
fontSize: uint = 0,
glyphOffsetX: int = 0,
glyphOffsetY: int = 0,
glyphAdjustWidth: int = 0,
glyphAdjustHeight: int = 0,
) =
let fontFilePath = joinPath(fontsDir, fontFileName)
let (sheetData, alphabet) = createSheet(
fontFilePath,
fontSize,
glyphOffsetX,
glyphOffsetY,
glyphAdjustWidth,
glyphAdjustHeight,
)
savePalettePng(sheetData, outputsPaletteDir, outputsName)
saveDatFile(alphabet, outputsPaletteDir, outputsName)
saveRgbaPng(sheetData, outputsRgbaDir, outputsName)
saveDatFile(alphabet, outputsRgbaDir, outputsName)
convertFont(
fontFileName = "quan/quan.ttf",
outputsName = "quan",
fontSize = 8,
)
convertFont(
fontFileName = "fusion-pixel-monospaced/fusion-pixel-monospaced.otf",
outputsName = "fusion-pixel-monospaced",
fontSize = 12,
)
convertFont(
fontFileName = "fusion-pixel-proportional/fusion-pixel-proportional.otf",
outputsName = "fusion-pixel-proportional",
fontSize = 12,
)
convertFont(
fontFileName = "unifont/unifont-15.0.01.ttf",
outputsName = "unifont",
fontSize = 16,
)
convertFont(
fontFileName = "roboto/Roboto-Regular.ttf",
outputsName = "roboto",
fontSize = 24,
)