Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

DRAW STRING: 5. Parameter

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 12.03.2006, 17:32    Titel: DRAW STRING: 5. Parameter Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 12.03.2006, 17:38    Titel: Antworten mit Zitat

Wie wär's mit "Überraschungsfunktion"?! lachen
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 12.03.2006, 17:53    Titel: Antworten mit Zitat

siehe http://www.freebasic.net/forum/viewtopic.php?t=3059&highlight=draw+string

freebasic.net hat Folgendes geschrieben:
DRAW STRING [buffer,] [STEP] (x, y), string [, color [, font] ]

Demnach kann man dort eine Font-Datei angeben.

Michael
_________________
Code:
#include "signatur.bi"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 17.03.2006, 19:31    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
max06



Anmeldungsdatum: 05.12.2004
Beiträge: 390
Wohnort: Augsburg

BeitragVerfasst am: 18.03.2006, 13:28    Titel: Das kommt mir bekannt vor... Antworten mit Zitat

Das ist ja ein schöner, neuer Befehl lächeln

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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 18.03.2006, 13:54    Titel: Antworten mit Zitat

@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 durchgeknallt)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
max06



Anmeldungsdatum: 05.12.2004
Beiträge: 390
Wohnort: Augsburg

BeitragVerfasst am: 18.03.2006, 17:18    Titel: Wann? Antworten mit Zitat

Wann gibts die 0.16b Stable?

Dann werd ichs nach Backup wagen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 18.03.2006, 17:43    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.

 Impressum :: Datenschutz