code wiki / _hdl_build / nx_nishi_font_demo.nx
nx_nishi_font_demo.nx source
↩ module page · 25 lines · 1013 B
1// nx_nishi_font_demo.nx -- renders the sovereign Nishi stroke font (anti-aliased) at several sizes to a
2// viewable PNG, so the design can be eyeballed + iterated. 100% sovereign. license_tier: ORIGINAL
3import "nx_syscalls.nx"
4import "nx_png_write.nx"
5import "nx_nishi_font.nx"
6
7func main() -> i64 {
8 let iw: i64 = 760
9 let ih: i64 = 240
10 let rgb: *u8 = sys_mmap(iw*ih*3 + 16)
11 var i: i64 = 0
12 while i < iw*ih*3 { rgb[i] = 255 as u8; i = i + 1 } // white
13
14 let s: *u8 = "NISHI BROWSER 2026\x00" as *u8
15 var sl: i64 = 0
16 while s[sl]!=(0 as u8) { sl=sl+1 }
17
18 nf_draw_text(rgb, iw, ih, 10, 20, 72, s, sl) // large
19 nf_draw_text(rgb, iw, ih, 10, 120, 40, s, sl) // medium
20 nf_draw_text(rgb, iw, ih, 10, 180, 24, s, sl) // small
21
22 nx_png_write_rgb("knowledge/status/nishi_font_demo.png\x00" as *u8, rgb, iw, ih)
23 sys_write(1, "nishi_font_demo -> knowledge/status/nishi_font_demo.png\n\x00" as *u8, 55)
24 return 0
25}