@PhilOfPerth unlike with Fonts you can make the text any size you want when you call Text8
Sub Text8 (x, y, textHeight, K As _Unsigned Long, txt$)
This substitutes for a _Print String(x, y), txt$ only it does more!
You can say whatever size you want with textHeight and you can specify whatever color you want.
x, y is top left corner of the text put onto screen at the color and height you specify for txt$
If you want to say make every line a height of 20 then y = 20 * row, and use something less than 20 like 18 or 16 for text height so letters aren't sitting right on top of one another. Like the 3 FOX example.
Update: Actually you can make the above example text height at 20! There is still a tiny little space between each row. I just checked.
Sub Text8 (x, y, textHeight, K As _Unsigned Long, txt$)
This substitutes for a _Print String(x, y), txt$ only it does more!
You can say whatever size you want with textHeight and you can specify whatever color you want.
x, y is top left corner of the text put onto screen at the color and height you specify for txt$
If you want to say make every line a height of 20 then y = 20 * row, and use something less than 20 like 18 or 16 for text height so letters aren't sitting right on top of one another. Like the 3 FOX example.
Code: (Select All)
Screen _NewImage(600, 600, 32)
For i = 0 To 29
Text8 20, i * 20, 18, &HFF00FF88, "This is line" + Str$(i)
Next
Sleep
Sub Text8 (x, y, textHeight, K As _Unsigned Long, txt$)
Dim fg As _Unsigned Long, cur&, I&, multi, xlen
fg = _DefaultColor
f = _Font
'screen snapshot
cur& = _Dest
I& = _NewImage(8 * Len(txt$), 8, 32)
_Dest I&
_Font 8
Color K, _RGBA32(0, 0, 0, 0)
_PrintString (0, 0), txt$
multi = textHeight / 8
xlen = Len(txt$) * 8 * multi
_PutImage (x, y)-Step(xlen, textHeight), I&, cur&
Color fg
_FreeImage I&
_Dest cur&
_Font f
End Sub
Update: Actually you can make the above example text height at 20! There is still a tiny little space between each row. I just checked.
b = b + ...