Entwickler-Ecke
Multimedia / Grafik - Canvers = Bild Größe
mimi - Mi 20.11.02 21:40
Titel: Canvers = Bild Größe
Hallo,
ich habe volgenden code geschrieben:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39:
| var i,x:Integer; e:array[0..2] of integer; menus:array [0..2,0..4] of String; BitMap1 : TBitMap; begin BitMap1 := TBitMap.Create; menus[0,0]:='Spiel Starten'; menus[0,1]:='Einstellungen'; menus[0,2]:='Hilfe'; menus[0,3]:='Beenden';
menus[1,0]:='Spiel Starten'; menus[1,1]:='Level Laden'; menus[1,2]:='Level Editor'; menus[1,3]:='Zurück';
menus[2,0]:='Level Speichern'; menus[2,1]:='Level Laden'; menus[2,2]:='Einstellungen'; menus[2,3]:='Zurück zum Hauptmenu'; menus[2,4]:='Zurück';
e[0]:=3; e[1]:=3; e[2]:=4; for i:=0 to 2 do begin for x:=0 to e[i] do begin if CheckBox1.Checked = True then begin BitMap1.Canvas.Font:=FontDialog2.Font; BitMap1.Canvas.TextOut(0,0,menus[i,x]); BitMap1.SaveToFile(BUDirectoryBox1.Directory + '\s_' + IntToStr(i) + '_' + intToStr(x) + '.bmp' ) end else begin BitMap1.Height:=30; BitMap1.Width:=FontDialog2.Font.Size + StrLen(PChar(menus[i,x])) ; BitMap1.Canvas.Font:=FontDialog1.Font; BitMap1.Canvas.TextOut(0,0,menus[i,x]); BitMap1.SaveToFile(BUDirectoryBox1.Directory + '\u_' + IntToStr(i) + '_' + intToStr(x) + '.bmp' ) end; end; end; |
nunu möchte ich gerne das die große der BMP angepasst wird also automatisch wie geht das ????
MFG
mimi
Anonymous - Do 21.11.02 20:42
Immer diese Ratespiele :evil: Du solltest vielleicht schreiben was du willst und nicht einfach nur
Zitat: |
nunu möchte ich gerne das die große der BMP angepasst wird also automatisch wie geht das ???? |
An was? Sollen die Leute raten was du meinst? Canvars ist die Bildgröße. Nachdem ich also erst deinen Code studieren mußte um zu raten was du willst, glaube ich zu denken, daß die Schrift weggeschnitten wird. Wie gesagt, das glaube ich nur.
Es gibt:
Canvas.TextWidth
und
Canvas.TextHeight
Daraus kannst du berechnen wie viel Pixel breit der Text sein wird.
Also kannst du abfragen
Quelltext
1: 2: 3: 4:
| with Bmp do begin if Canvas.TextWidth('Ein Text') > Width then Width := Canvas.TextWidth('Ein Text'); //Height := Height + Canvas.TextHeight(#32); end; |
mimi - Do 21.11.02 21:01
DANKE FÜR DEINE ANTWORT: Es hat funktioniert was ich wollte;)
Ich habe ja versucht mich klar auszudrücken, dahrer habe ich auch den code rein kopiert,aber mir fehtl sowas immer schwer, naja egal,
aufjedenfall danke für deine HILFE
MFG
mimi
Delete - Fr 22.11.02 02:22
Gehört jetzt nicht zum Thema, aber ein kleiner persönlicher Rat von mir:
Du solltest eventuell dafür Sorge tragen, dass am 24.12. ein Duden bei dir unter dem Weihnachtsbaum liegt. :wink:
Rechtschreibfehler machen immer einen schlechten Eindruck, nicht nur in einer Bewerbung. Auch wenn es beim Posten schnell gehen muß, mit etwas Ruhe tippen und das Posting macht schon einen viel besseren Eindruck. Desweiteren ist es dann auch einfacher zu lesen und somit verständlicher.
PS: Jeder macht _mal_ Tippfehler (Für meine Tutorials habe ich Gott sei dank einen guten Lektor), aber bei dir war ja fast jedes zweite Wort falsch.
mimi - Fr 29.11.02 15:14
ich habe schon ein "duden", aber danke für deinen tipp,ich werde größer Fragen jetzt offline schreiben und dann ins Frum kopieren das ist viel besser !
MFG
mimi
Delete - Fr 29.11.02 16:05
So extrem muß es nicht sein. Einfach nur mal noch mal durchlesen, was man geschrieben hat.
mimi - Fr 29.11.02 16:48
naja mal sehen wie die nächsten beiträge werde von mir :P :P
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!