Fortran · 763 bytes Raw Blame History
1 program full_render_demo
2 use fgof_screen, only : allocate_screen, clear_screen_style, put_glyph, render_screen_ansi, set_cursor
3 use fgof_screen_types, only : screen_buffer, screen_style
4 implicit none
5
6 type(screen_buffer) :: buffer
7 type(screen_style) :: style
8 character(len=:), allocatable :: rendered
9 integer :: bytes
10
11 buffer = allocate_screen(4, 2)
12 style = clear_screen_style()
13 style%fg = 39
14 style%bold = .true.
15
16 call put_glyph(buffer, 1, 1, "F", style)
17 call put_glyph(buffer, 1, 2, "G", style)
18 call put_glyph(buffer, 2, 1, "O")
19 call put_glyph(buffer, 2, 2, "F")
20 call set_cursor(buffer, 2, 3)
21
22 rendered = render_screen_ansi(buffer)
23 bytes = len(rendered)
24 write(*, "(a, i0)") "full-bytes=", bytes
25 end program full_render_demo
26