Text Function funzt nicht
-
Master_Max schrieb:
pFont = TTF_OpenFont("Arial.ttf",12);
TTF_CloseFont(pFont);Du öffnest die Schriftart und schließt sie direkt danach wieder - wahrscheinlich darf man sie anschließend nicht mehr verwenden, also das TTF_CloseFont erst an's Ende packen, wenn Du die Schriftart nicht mehr brauchst!
-
Hi,
vielen dank.
Das könnte stimmen, werde es mal testen.
Aber ich verstehe nicht was das mit dem
SDL_Rect Fehler zu tuen hat.
Nochmal danke.TGGC schrieb:
Interessante Geschichte! Soll ich auch mal eine erzählen?Was meinst du? Ich verstehe nicht, warum
du im moment überrall versuchst dir Feinde zu machen,
du kannst ja helfen(du bist sehr gut, großes Kompliment)
aber warum gehst du in Foren wenn du nicht helfen willst?
Ich hab keinen Bock streit anzufangen, denn(den hast du im moment
eh mit fast jedem)aber was soll dein Post?
Eine Interresante Geschichte kannst du mir gerne erzählen.@alle die mit TGGC streit haben:
Macht eine Art vertrag, TGGC darf keine Links mehr zu seinem
Spiel stellen(erstens nicht getarnt und zweitens nicht in wildfremden
dazu überhaupt nicht passenden Beiträgen und er soll sich mal überlegen
das er früher genause schlecht war wie wir.)Und dafür legen wir den
Terror gegen ihn mal bei.Ausserdem sollten wir mal die Behauptung
TGGC hat keine Freunde fallen lassen, das ist erstens aus der Luft gegriffen
und zweitens geht es uns falls das der Fall ist auch nichts weiter an.
Edit:Ausserdem gehört die Internet Site weg.(auch wenn sie irgendwie lustig ist)cu max
-
Hi,
ich hab den Fehler mit:SDL_CloseFont
Ans untere Ende der Function getan,
doch der Fehler, liegt wie schon beschrieben beim
SDL_Rect.Wäre für hilfe sehr dankbar,
vielen dank im vorraus.cu max
-
Hi,
@TGGC ich sehe gerade auf deiner Side das du mal mit Darkbasic
gearbeitet hast, wie war dein Name im Forum?(Nur aus interesse?)cu max
-
Master_Max schrieb:
Hi,
@TGGC ich sehe gerade auf deiner Side das du mal mit Darkbasic
gearbeitet hast, wie war dein Name im Forum?(Nur aus interesse?)cu max
er hatte 2
"D.G.A.U.D.A.E.C." - Der Größte Angeber Und Das Arschloch Einer Community
"TGGC - Gay is not enough"
-
Kommst du auch aus dem DB Forum?
cu max
-
Jo bin doch Jarek und muss meinen verwichsten feind TGGC ja mal feuer unterm Arsch machen, damit alle seine dunkle vergangenheit kennen.
-
SDL_Rect:
typedef struct {
Sint16 x, y;
Uint16 w, h;
} SDL_Rect;du musst aber SDL_Color verwenden:
typedef struct {
Uint8 r;
Uint8 g;
Uint8 b;
Uint8 unused;
} SDL_Color;cu
-
Hi,
aha!Danke.
cu max
-
@Master_Max:
Du hast keine konkrete Frage gestellt, also was soll man antworten?Im DB Forum hiess ich auch TGGC, ich hatte noch nie ein anderes Pseudonym.
BTW: Ich habe keinen Streit. Genies haben keinen Streit nötig.
Bye, TGGC
-
Hi,
meine Frage war wo der Fehler liegt, ich hatte ihn ja wie vermutet
bei SDL_Rect, also nun SDL_Color.
Meine Frage hätte aber doch eigentlich für ein "Genie" wie dich
ersichtlich sein sollen.PS:Habs noch nicht hinbekommen, muss mich ersmal mit einer Button erkennung
beschäftigen.Vielen dank.cu max
-
sdlrect hat kein b schrieb:
SDL_Rect:
typedef struct {
Sint16 x, y;
Uint16 w, h;
} SDL_Rect;du musst aber SDL_Color verwenden:
typedef struct {
Uint8 r;
Uint8 g;
Uint8 b;
Uint8 unused;
} SDL_Color;cu
Tja. Das hätte ich Dir ja auch sagen können (auf mich selber sauer sei)...
Mich hatte es auch gewundert, was ein Rectangle mit einer Farbeinstellung zu tun hat, aber da ich NULL Peil von SDL hab' hab' ich's mal lieber gelassen...
-
Master_Max schrieb:
meine Frage war wo der Fehler liegt
Warum hast du dann nicht einfach danach gefragt sondern behauptet "das ist die Fehlerquelle:".
-
Master_Max schrieb:
TextSurface = TTF_RenderText_Solid(pFont, "Alles wird gut",&color);
[/cpp]
Vielen dank im vorraus.
cu maxdas &color stimmt nicht, es sollte nur color heissen
TTF_RenderText_Solid(pFont, "Alles wird besser", color);cu
-
Hi,
vielen dank.
Ich hatte mal wieder Zeit mich damit zu beschäftigen komme aber immer
noch nicht auf den grünen Zweig. Ich hab bei Google und in vielen
Foren gesucht finde aber kein Tutorial. Nun ja, ich habe immer noch einen
Fehler und ich denke alles was ihr gesagt habt berücksichtigt zu haben.
Naja, vielleicht könnt ihr mir ja helfen:
Ein Bsp:#include <SDL.h> #include "SDL_ttf.h" //Präprozessor befehle die leider nötig sind damit SDL läuft. #ifdef _WIN32 #undef main #endif int main(){ SDL_Init(SDL_INIT_VIDEO); SDL_Surface *screen; screen=SDL_SetVideoMode(1024,768,32,0); TTF_Init(); SDL_Surface *TextSurface; TTF_Font *pFont; typedef struct color{ Uint8 r; Uint8 g; Uint8 b; Uint8 unused; }SDL_Color; pFont = TTF_OpenFont("Arial.ttf",12); TTF_CloseFont(pFont); TextSurface = TTF_RenderText_Solid(pFont,"Alles wird besser",&color); //es //ist egal ob ich &color oder nur color schreibe, // ich erhalte bei beiden //den //Fehler. SDL_BlitSurface(TextSurface,NULL,screen,0); SDL_UpdateRects(screen,1,0); SDL_FreeSurface(TextSurface); TTF_Quit(); SDL_Delay(3000); SDL_Quit(); return 0; }
**
//--------------------Konfiguration: TTF_Text - Win32 Debug--------------------
Kompilierung läuft...
codeTTF_Text.cpp
C:\Programme\Microsoft Visual Studio\MyProjects\TTF_Text\codeTTF_Text.cpp(28) : error C2275: "color" : Ungültige Verwendung dieses Typs als Ausdruck
C:\Programme\Microsoft Visual Studio\MyProjects\TTF_Text\codeTTF_Text.cpp(19) : Siehe Deklaration von 'color'
Fehler beim Ausführen von cl.exe.TTF_Text.exe - 1 Fehler, 0 Warnung(en)
**Ich habe doch color richtig definiert oder?
Ich würde mich sehr über hilfe freuen.PS:Wegen den //´s komisch, aber die eingabe spinnt wenn ich sie schreibe,
rücken die wörter der letzten zeile immer nach vorne.cu max
-
Solltest Du dann nicht SDL_Color statt color verwenden?!?
-
- du brauchst sdl_color nicht neu zu definieren, das gibts schon:) nur musst du noch eins mit deinen beliebigen werten füllen...
- dann musst du ttf_closefont() erst nachdem du die schrift nicht mehr benötigst (ende des programms?) aufrufen.
- es ist nicht egal ob du color oder &color übergibst.
- mit "SDL_BlitSurface(TextSurface,NULL,screen,NULL);" blittest du dein textsurface in die linke obere ecke des bildschirms. besser wäre es, als letzten parameter ein SDL_Rect zu übergeben, in dem steht, wohin du die Schrift haben willst.#include <SDL.h> #include "SDL_ttf.h" //Präprozessor befehle die leider nötig sind damit SDL läuft. #ifdef _WIN32 #undef main #endif int main(){ SDL_Init(SDL_INIT_VIDEO); SDL_Surface *screen; screen=SDL_SetVideoMode(1024,768,32,0); TTF_Init(); SDL_Surface *TextSurface; TTF_Font *pFont; pFont = TTF_OpenFont("Arial.ttf",12); SDL_Color color; color.r = color.g = color.b = 255; //schriftfarbe weiss TextSurface = TTF_RenderText_Solid(pFont,"Alles wird besser",color); SDL_BlitSurface(TextSurface,NULL,screen,NULL); SDL_UpdateRects(screen,1,0); SDL_FreeSurface(TextSurface); TTF_CloseFont(pFont); TTF_Quit(); SDL_Delay(3000); SDL_Quit(); return 0; }
ich habe jetzt nicht alles ganz genau durchgesehen und auch nicht getestet, aber eigentlich sollte es so gehen.
-
Hi,
vielen dank.
Du bist wieder ein beweis das die unregistrierten sehr gut sind.
@TGGC und nicht immer "Trollen"
Nochmals danke.
Sorry, aber ich blick nie bei der SDL Docu durch,
vorallem eben nicht bei den Datentypen, da die nicht in
der Deutschen Doku erklärt werden.cu max
-
Hi,
leider geht es immer noch nicht.
Er kompiliert linkt es und führt es aus,
aber sofort nachdem er mit der Ausführung anfängt,
gibt er einen schweren Fehler aus und tut debuggen.
Naja ich linke alles was ich brauche, die header sind alle
includiert ich weis nicht mehr an was es liegen sollte,
ich werde wohl ne eigene Bmp font linie machen müssen.
Ich will euch nicht mehr plagen.PS:Es hat irgendetwas mit der SDL.dll zu tuen, aber
die ist auch im richtigen System Verzeichniss,
Win Xp System32.cu max
-
Noch ein letztes Mal color und &color tauschen...!??