Re: Zeilenumbruch mit DrawText()
Verfasst: 18.02.2012 23:57
Ich fand einen kleinen Fehler.
Das Ende des Satzes wird nicht angezeigt. ("DrawText() aufrufen.")
Verbesserung:


Das Ende des Satzes wird nicht angezeigt. ("DrawText() aufrufen.")

Verbesserung:
Code: Alles auswählen
Procedure DrawLBText(image, width, text.s)
line.s=""
x=5
y=5
StartDrawing(ImageOutput(0))
k = CountString(text," ")+1
For loop = 1 To k
If TextWidth(line + StringField(text,loop," "))<width
line = line + StringField(text,loop," ")+" " : Debug Line
Else
DrawText(x,y,line,$FFFFFF)
y+30
line=StringField(text,loop," ")+" "
EndIf
Next
If line>""
DrawText(x,y,line,$FFFFFF)
EndIf
StopDrawing()
EndProcedure
CreateImage(0,300,500)
DrawLBText(0, 200, "Ist es irgendwie möglich im DrawText()-Befehl einen Zeilenumbruch einzufügen? Ich mache gerade einen Splash-Screen und will während der Ladezeit einen 'Tipp des Tages' anzeigen (welche in einem Tips.s() Array gespeichert sind). Da 100% der Texte über die Splash-Breite gehen, müsste ich jedesmal für einen Zeilenabsatz ein neues DrawText() aufrufen.")
OpenWindow(0,0,0,300,500,"DrawText LineBreak",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
ImageGadget(0,0,0,300,500,ImageID(0))
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
