| Autor |
Beitrag |
mimi
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 29.06.03 18:16
Hallo,
habe da ein problem: wie kann ich unter openGL die schriftgröße berechnen? habe nur TFont zuverfügung  ich nutze die GLXTreem komponenten.....
Moderiert von Tino: Absätze entfernt.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: So 29.06.03 19:40
Hi,
das hast du doch schonmal gefragt irgendwann, oder???
Und es geht immernoch genauso wie damals, entweder mit TCanvas.TextWidth oder mit GetTextExtentPoint32.
Au'revoir,
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 29.06.03 20:02
ist möglich. und wie rufe ich diese fuktion auf? könntes du mal ein beispiel posten?
Moderiert von Tino: Absätze entfernt.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: So 29.06.03 20:25
Hi,
so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| var S: SIZE; begin GetTextExtentPoint32(hDC,'Hallo',Length('Hallo'),S); end; |
Au'revoir,
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 29.06.03 20:39
funktioniert leider nicht. der wer ist zu klein, der zurück gegeben wird
gibt es noch ander möglichkeiten ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Tweafis
      
Beiträge: 647
WinXP + fbsd
Delphi 5 Prof
|
Verfasst: So 29.06.03 21:05
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| function getStringSize(DaFont: TFont; text: string): TSize; var tmpCanvas: TCanvas
begin tmpCanvas := TCanvas.Create(Self); try tmpCanvas.Font := DaFont; Result := tmpCanvas.textExtent(text); finally tmpCanvas.free; end; end; |
dann kannst du mit
getStringSize in ein TSize dingens reinschreiben und mit
cx und cy die größe abfragen...
_________________ .: Es wird der Tag kommen, an dem wir es nicht mehr ändern können :.
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: So 29.06.03 22:52
danke, werde ich mal teste:)
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Di 01.07.03 13:43
geht leider nicht. die größe íst immer noch zu klein. die ich rauß habe. gibt es noch andere möglichkeiten ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
Aya
      
Beiträge: 1964
Erhaltene Danke: 15
MacOSX 10.6.7
Xcode / C++
|
Verfasst: Di 01.07.03 13:48
Ne, die ist schon richtig... nur wenn du mit z.B. glScale deine Schrift vergrößerst, oder mit glTranslate ganz nah herangehst, klappt das natürlich nicht... da müßtest du noch den ZoomFaktor etc mit einberechnen.
Wofür genau brauchst du es denn?
Au'revoir,
Aya~
_________________ Aya
I aim for my endless dreams and I know they will come true!
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Di 01.07.03 14:01
ich brauche es für eine menu steuerung.
ich gebe die menuItems per eine TFont komponenten von glxTRemm aus.
wenn ich jetzt die items makiere muss ich wissen wie lang die items sind damit ich erechnen kann wo die entpunkte sind, das habe ich so versucht:
MenuItems[0].x1:=MenuItems[0].x+size.cx
aber leider hatte er jetzt den maus curse nicht mehr verändert. als ich es wieder geänder hatte, hat alles problem los funktioniert:)
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 03.07.03 13:09
geht immer noch nicht, gibt es keine andere winapi funktion ?
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|
MathiasH
      
Beiträge: 699
WinXP, Win98SE, Debian, Win95
D5 Stand, D6 Prof
|
Verfasst: Do 03.07.03 19:55
du musst natürlich sämtliche skalierungen, die glxtreem und die Matrix machen, auch mit deinen pixelgrößen machen, denn auf dem weg zum screen wird etliche male skaliert:
1. bei der generierung der textur
2. bei der skalierung der matrix
3. bei der größe/position der QUADS, auf denen die textur ist
4. bei der rasterization(rendern)
erst, wenn du alle diese skalierungen nachmachst kriegst du vernünftige zahlen raus
Wie genau das geht kann ich dir leider auch net sagen
Io-sys/MathiasH
_________________ "Viel von sich reden, kann auch ein Mittel sein, sich zu verbergen."
Friedrich Nietzsche
|
|
mimi 
      
Beiträge: 3458
Ubuntu, Win XP
Lazarus
|
Verfasst: Do 03.07.03 19:59
gut, dann muss ich mir was andes einfallen lassen. um die endwerte von den texten rauß zu bekommen.
_________________ MFG
Michael Springwald, "kann kein englisch...."
|
|