2009-05-28 5 views
4

Ist es möglich, die Größe einer Schriftart in .NET Winforms zu ändern, ohne eine neue Schriftart mit der neuen Größe erstellen zu müssen?So ändern Sie die Schriftgröße, ohne eine neue Schriftart zu erstellen

+0

Warum können Sie nicht einfach die Font-Eigenschaft verwenden? Welches Steuerelement verwendest du? Ein Etikett? Eine Textbox? Vielleicht verwenden Sie eine Rasterschrift, die keine größeren Größen zur Verfügung hat? Vielleicht können Sie zu einer TrueType- oder OpenType-Schriftart wechseln. – steamer25

+0

Ich benutze ein Etikett, das seine Schriftgröße reduziert, wenn längere Texte darauf eingestellt sind, um sicherzustellen, dass sie passen – jvanderh

Antwort

4

Nein. Die Schriftgröße gilt nur für vorhandene "Font" -Objekte.

0

Stellen Sie sicher, dass Sie die Konstruktormethode verwenden, mit der Sie die Basisschriftart verwenden und die neue gewünschte Größe übergeben können. Dadurch sparen Sie etwas Code von den anderen Ansätzen.

+0

Ich dachte das gleiche ... aber stellt sich heraus, dass nur mit _style_ not size funktioniert :( –

+0

Hoppla Sie haben sich daran erinnert, so etwas zu tun, aber es war für das Erstellen einer fett gedruckten Schriftart aus einer nicht fett gedruckten Schriftart. Das Erstellen einer anderen Schriftgröße würde das Ausbrechen der erforderlichen Eigenschaften der vorhandenen Schriftart erfordern. –

7

Sie könnten so etwas mit einer Extension-Methode tun.

Imports System.Runtime.CompilerServices 

Module FontExtensions 

<Extension()> Public Function ToSize(ByVal OriginalFont As Font, ByVal NewSize As Single) As Font 

     Dim NewFont As Font 

     NewFont = New Font(OriginalFont.FontFamily, NewSize, OriginalFont.Style) 

     Return NewFont 

    End Function 

End Module 

und es dann so nennen ...

SomeObject.Font = Font.ToSize(12) 

Es ist immer noch eine neue Schriftart hinter den Kulissen zu schaffen, aber die Code-Anwendung ist mit dem Erstellungsprozess nicht überladen.

+0

Wird dies nicht undicht sein Font-GDI-Objekte? – toong

Verwandte Themen