Seite 1 von 1
Umrechnen von GraphicsUnit.Point nach GraphicsUnit.Pixel
Verfasst: Fr Dez 19, 2008 11:36 am
von Xin
Ich muss eine Bitmap-Grafik zusammenbauen, die auch Text enthält.
Nun wird eine Bitmap-Grafik in Pixeln gemessen, der Font mit dem ich in die Grafik reinschreiben möchte, enthält als Font.Unit aber GraphicsUnit.Point.
Damit kann ich den Text allerdings nicht sauber positionieren, da ich die Größe in Pixel brauche. Weiß jemand, wo man von GraphicsUnit.Point nach GraphicsUnit.Point umrechnen lassen kann?
Re: Umrechnen von GraphicsUnit.Point nach GraphicsUnit.Pixel
Verfasst: Fr Dez 19, 2008 9:34 pm
von nufan
Xin hat geschrieben:Weiß jemand, wo man von GraphicsUnit.Point nach GraphicsUnit.Point umrechnen lassen kann?
Hmmm... GraphicsUnit.Point nach GraphicsUnit.Point... ist doch ganz einfach
Ich nehme an, du willst pt (Schrift) in pixel umrechnen oder?
Da ich nichts zu tun habe (und das Wiki erst Morgen am Plan steht

) hab ich mal gegoogelt:
http://forum.de.selfhtml.org/archiv/199 ... 59/#m32023
http://www.fledisoft.de/func/twips.php
Ist zwar nicht C#, aber das Prinzip sollte das gleiche sein.
Keine Ahnung ob dir das was bringt

Re: Umrechnen von GraphicsUnit.Point nach GraphicsUnit.Pixel
Verfasst: Sa Dez 20, 2008 1:00 am
von cloidnerux
Hab enige erfahrungen mit VC++ und würde desshalb folgendes vorschlagen:
Da das Objekt GraphicsUnit.Point eigentlich nur aus int's usw. besteht, kannst du dir eine KOnvertireung volgendermaßen machen:
Code: Alles auswählen
GraphicsUnt.Pixel = gcnew GraphicsUnit.Pixel(static_cast<int to irgendwas>(GraphiscUnit.Point)...);
Ich weiß nicht wie die Klasse aufgebaut ist, aber sollte so gehen(geht static_cast unter C#?)
Oder unter der Visual Reihe gibts ja die intellLicens(oder so ähnich), es kann sein, das die Klasse schon eine Konvertierungsfunktion bereit hält.
Und für den Notfall würde evt. das gehen:
Unter Vc++ funktioniert das ganze.
Hoffe es kann dir Helfen.
Re: Umrechnen von GraphicsUnit.Point nach GraphicsUnit.Pixel
Verfasst: So Dez 21, 2008 11:24 am
von Kerli
@cloidnerux:
Du weißt aber schon, dass es hier um eine Umrechnung zwischen zwei verschiedenen Einheiten geht und nicht um einen Cast?
Re: Umrechnen von GraphicsUnit.Point nach GraphicsUnit.Pixel
Verfasst: So Dez 21, 2008 8:13 pm
von Xin
Um des Rätsels Lösung preiszugeben:
Graphics enthält eine Funktion Measure-String, die ich auch schon benutzte, um die Länge des Strings zu bestimmen.
Es komm ein SizeF Objekt zurück, das dann die Breite, als auch die gesuchte Höhe enthält.