Also ich hab hier im Forum nichts zu meiner Frage gefunden.
Ich programmier momentan ein (noch relativ simples) Pokerspiel.
Anfangs hab ich einfach alle 52Pokerkarten in Photoshop erstellt, in eine ImageList geladen und wenn sie benötigt wurden daraus geladen.
Jetzt möchte ich aber die Karten (die gebraucht werden, nichtmehr alle 52) während des Spiels erstellen, und hab dabei bisher folgendes hinbekommen:
Delphi-Quellcode:
//Ausschnitt aus einer Schleife in der dem Spieler die Karten gegeben werden und halt die Karten
//gezeichnet werden sollen
//In der ImageList sind Bilder von Karo, Herz, Pik und Kreuz mit den Indexen 1-4
Spieler[j].Zwei[i].Grafik := TBitmap.Create;
Spieler[j].Zwei[i].Grafik.Width := 50;;
Spieler[j].Zwei[i].Grafik.Height := 80;
x := clWhite;
Spieler[j].Zwei[i].Grafik.Canvas.FillRect(rect(0, 0, 50, 80));
if Spieler[j].Zwei[i].Farbe < 3 then
x := clRed
else
x := clBlack;
ImageList1.Draw(Spieler[j].Zwei[i].Grafik.Canvas, 1, 39, Spieler[j].Zwei[i].Farbe);
Spieler[j].Zwei[i].Grafik.Canvas.Font.Color := x;
Spieler[j].Zwei[i].Grafik.Canvas.Font.Size := 20;
Spieler[j].Zwei[i].Grafik.Canvas.Font.Style := [fsBold];
Spieler[j].Zwei[i].Grafik.Canvas.Font.Name := 'Arial Black';
Spieler[j].Zwei[i].Grafik.Canvas.TextOut(15, 2, Kartenaufschrift[Spieler[j].Zwei[i].Bild]);
//Hoffe ihr versteht soweit einigermaßen was ich zu tun versuche
Jetzt zu meinem Problem: Erstens, hab ich keine Idee wie ich den Text den ich auf den Canvas schreibe zentrieren soll...geht das nur nach Gfeühl? Also abschätzen mit welchen Einstellungen es zentriert wäre?
Und mein zweites Problem: Die Schrift wird mir zu wenig "weich" (dh Pixelig) gezeichnet (ich hoffe ihr wisst was ich damit meine), kann ich das irgendwie ändern?
MfG und danke im Vorraus! =)
Edit: Achso eins noch...wenn ich jetzt die Größe des Bildes ändere, dh Width und Height kleiner stelle, dann zeigt er nur noch einen Ausschnitt des Bildes, ich hätt aber gerne, dass er das Bild Stretched...wie krieg ich das hin?