2009-12-15 6 views
5

Wie kann ich das Font Objekt für die Standardsystemschriftart erhalten, die von dem bestimmten Gerät verwendet wird? Ich habe festgestellt, dass verschiedene Geräte unterschiedliche Auflösungen und DPIs haben, aber einige meiner Steuerelemente haben explizit definierte Schriftarten. Ich möchte in der Lage sein, die Standardsystemschriftart zur Laufzeit zu erhalten (als ob ich nie die Font Eigenschaft auf dem Steuerelement geändert hätte).Wie erhalten Sie die Standardsystemschriftart in .NET Compact Framework?

Antwort

5

Haben Sie nach System.Drawing.SystemFonts gesucht? Ich denke, es könnte haben, was du brauchst.

https://msdn.microsoft.com/en-us/library/system.drawing.systemfonts.aspx

Edit: Ich habe gerade bemerkt das CF-Tag. Sie müssen sich die Registrierung ansehen, um die Systemschriftarteninformationen zu erhalten.

https://msdn.microsoft.com/en-us/library/ms900747.aspx

+0

Haben Sie eine Idee, wie die Werte in der Registrierung in ein Font-Objekt konvertieren? Das heißt, wie konvertieren Sie die 'Ht' und 'Wt' in geeignete Werte für den Font-Konstruktor? – Jason

+0

Da die Ht in Pixel ist, müssten Sie es konvertieren: Punkte = Pixel * (72/dpi) Soweit das Gew, bin ich mir nicht sicher. Die Bandbreite der Werte ist ziemlich groß. Möglicherweise müssen Sie einen Cutoff auswählen und sagen, dass irgendetwas darunter normal ist und alles darüber fett ist. – TheHurt