 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Dusky_Joe

Anmeldungsdatum: 07.01.2005 Beiträge: 1007 Wohnort: Regensburg/Oberpfalz
|
Verfasst am: 12.03.2006, 17:32 Titel: DRAW STRING: 5. Parameter |
|
|
Hi Leute!
Mecki hat grade von mir eine Mail bekommen, in der diese Beschreibung des Befehls DRAW STRING enthalten war:
freeBASIC Befehlsreferenz hat Folgendes geschrieben: | Syntax: DRAW STRING [Puffer, ] (x, y), Text [, Farbe [, ??] ]
Typ: Anweisung
Kategorie: Gfx
Verfügbar seit freeBASIC V0.16b, März-Release
DRAW STRING gibt einen Text im Grafikmodus an Pixelgenauen Koordinaten aus.
Damit kann in Grafikmodi PRINT abgelöst werden, das nur auf Zeilen und Spalten
genau ist; siehe LOCATE.
Ein weiterer Vorteil gegenüber PRINT ist, dass der Text transparent erscheint;
der Hintergrund wird nciht gelöscht.
# 'x' und 'y' sind INTEGER-Ausdrücke, die die linke obere Koordinate angeben,
an der die Textausgabe beginnen soll.
# 'Text' ist ein beliebiger Stringausdruck, der die Zeichenkette festlegt, die
ausgegeben werden soll.
Auch WSTRINGs werden unterstützt, allerdings können nur die normalen ASCII-
Zeichen korrekt dargestellt werden; Symbole, deren Zeichencode über 255
liegt, werden als '?' Fragezeichen dargestellt.
# 'Farbe' ist die Nummer der Farbe, in der der Text ausgegeben werden soll.
Wird dieses Argument ausgelassen, verwendet freeBASIC automatisch die von
COLOR eingestellte Standardfarbe.
# '??' ist ein unbekannter Parameter. Er muss ein Pointer sein.
(Die Funktion dieses Arguments wird demnächst recherchiert)
# 'Puffer' ist ein Speicherbereich wie ein mit IMAGECREATE erstellter Puffer
oder ein Array. Beide können mit PUT angezeigt
werden. Wird 'Puffer' ausgelassen, zeichnet freeBASIC direkt auf den Bildschirm.
Beispiel:
Code: | DIM TextPuffer AS ANY PTR
SCREEN 14, 32
' Ein Roter Hintergrund
PAINT (0, 0), &HFF0000
' "Hello World" auf dem Bildschirm ausgeben
DRAW STRING ( 0, 0), "Hello World"
' Zum Vergleich: Bei PRINT verschwindet der Hintergrund
LOCATE 1, 15
PRINT "Hello World"
' "Hello World" in gelb ausgeben
DRAW STRING ( 0, 10), "Hello World", &HFFFF00
' Standardfarbe auf grün setzen, und "Hello World" in dieser Farbe ausgeben
COLOR &H00FF00, &HFFFFFF ' Die Hintergrundfarbe hat keine Auswirkungen aus die Textausgabe
DRAW STRING ( 0, 20), "Hello World"
' Zum Vergleich: Print lässt sich nicht genau auf y = 40 Positionieren, und die
' Hintergrundfarbe hat Auswirkungen:
LOCATE 3, 15
PRINT "Hello World"
' Umleitung der Ausgabe in einen Puffer ist Möglich:
TextPuffer = IMAGECREATE(88, 8)
DRAW STRING TextPuffer (0, 0), &H00FFFF
PUT (100, 100), TextPuffer, PSET |
Unterschiede (zu QB):
Neu in freeBASIC
Siehe auch:
DRAW,
PRINT, LOCATE (Anweisung), COLOR (Anweisung),
PSET, LINE, CIRCLE, PAINT,
GET (Grafik), PUT (Grafik),
IMAGECREATE, IMAGEDESTROY
VIEW (Grafik), WINDOW,
SCREEN (Grafik) |
Weiß einer von euch, was der 5. Parameter (das ??) bedeutet?
Have a nice day
Ciao _________________ fully biological degradable
Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
|
Nach oben |
|
 |
Dusky_Joe

Anmeldungsdatum: 07.01.2005 Beiträge: 1007 Wohnort: Regensburg/Oberpfalz
|
Verfasst am: 17.03.2006, 19:31 Titel: |
|
|
Danke für den Link. Habe das Posting kurz überflogen. Dieses Wochenende werde ich wohl nicht dazukommen, aber demnächst ist dieser Parameter dann auch in der Ref verfügbar.
Danke für die Hilfe.
Have a nice day
Ciao _________________ fully biological degradable
Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet. |
|
Nach oben |
|
 |
max06

Anmeldungsdatum: 05.12.2004 Beiträge: 390 Wohnort: Augsburg
|
Verfasst am: 18.03.2006, 13:28 Titel: Das kommt mir bekannt vor... |
|
|
Das ist ja ein schöner, neuer Befehl
Allerdings kommt mir das ganze etwas bekannt vor: Sucht doch mal in der gfxlib.txt nach dem Befehl "GfxPrint". Dieser Befehl beinhaltet ebenfalls alle Eingeschaften außer die Angabe einer Font-Datei.
Da ich Linux verwende, versuche ich besser nicht, auf die 0.16b upzudaten. Habe es nur mit Hilfe geschafft, 0.16 Testing zum laufen zu bekommen.
Greets
Florian |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 18.03.2006, 13:54 Titel: |
|
|
@max61989
Die Testing Versionen sind nicht einfach zu Installieren, aber sobald 0.16 Stable wird sollte der Sprung ohne grosse Probleme ablaufen.
(Einfach immer brav die alte Version entfernen vor dem einspielen der neuen.)
Was ich nur noch mit Vorsicht mache, ist das mischen von Testing, Stable und CVS Versionen, das gab bei mir mal richtig ärger.
(Fehler kamen und gingen je nach Mischungsverhältniss ) |
|
Nach oben |
|
 |
max06

Anmeldungsdatum: 05.12.2004 Beiträge: 390 Wohnort: Augsburg
|
Verfasst am: 18.03.2006, 17:18 Titel: Wann? |
|
|
Wann gibts die 0.16b Stable?
Dann werd ichs nach Backup wagen... |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 18.03.2006, 17:43 Titel: |
|
|
Das kann noch dauern, aber wenn es soweit ist, erfährst du es über http://freebasic.net/ oder dieses Forum.
Wann es genau soweit ist, weis eigentlich keiner ausser vielleicht v1ctor (der Chef Entwickler von Freebasic). |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|