Wrapping Text on Canvas

BlitzPlus Forums/BlitzPlus Beginners Area/Wrapping Text on Canvas

Here's a function that should get help you out.

Function disptext(x,y,disptext$,canvas)
SetBuffer(CanvasBuffer(canvas))
Repeat
If lastfound >= previousfound
tmpstr2$=tmpstr$
tmpstr$=Mid$(disptext$,lastcut,Instr(disptext," ",lastfound)-lastcut)
If StringWidth(tmpstr$) > ClientWidth(canvas)
Text x,y,Trim$(tmpstr2$)
lastcut=previousfound
y=y+StringHeight(disptext)
End If
previousfound=lastfound
lastfound=Instr(disptext," ",lastfound+1)
Else
Exit
End If
Forever
Text x,y,Right$(disptext$,Len(disptext)-lastcut)
End Function