Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

INFO: Berechnen der logischen Höhe und Point Größe einer Schriftart

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 74299
Zusammenfassung
Um eine Schriftart in der grafischen Microsoft Windows-Umgebung erhält nur die erforderliche Punktgröße zu erstellen, muss eine Anwendung logische Höhe der Schriftart berechnen, da die CreateFont() und CreateFontIndirect() Funktionen logische Einheiten, verwenden um Höhe angeben.

Um eine Schriftart für den Benutzer zu beschreiben, kann eine Anwendung eine Schriftart Schriftgrad, erhält seine Höhe berechnen. Dieser Artikel enthält die Formeln zum Ausführen diese Berechnungen für den MM_TEXT Zuordnungsmodus erforderlich. Sie haben eine neue Formel berechnen die Größe Schriftart in einem anderen Zuordnungsmodus verwendet ableiten.
Weitere Informationen
Um die logische Höhe zu berechnen, verwenden Sie die folgende Formel:
                                Point Size * LOGPIXELSY   height = Internal Leading + -------------------------                                          72				
LOGPIXELSY ist die Anzahl der Pixel in einer logischen Zoll auf dem Gerät enthalten. Dieser Wert wird durch Aufrufen der Funktion GetDeviceCaps() mit LOGPIXELSY Index abgerufen. Der Wert 72 ist erhebliche, da 1 Zoll auf 72 Punkt enthält.

Das Problem durch diese Berechnung ist, dass es keine Methode zum Ermitteln der internen führende für die Schriftart, da es noch nicht erstellt wurde. Um zu diese Schwierigkeiten zu umgehen, verwenden Sie die folgende Variante der Formel:
            -(Point Size * LOGPIXELSY)   height = --------------------------                         72				
diese Formel kann auch wie folgt geschrieben werden:
   plf->lfHeight = -MulDiv (nPtSize, GetDeviceCaps (hdc, LOGPIXELSY), 72);				
eine Anwendung ruft den CreateFont() oder CreateFontIndirect() Funktionen und gibt einen negativen Wert für die Parameter für die Höhe, die Schriftartzuordnung bietet die größte Übereinstimmung für die Zeichenhöhe der statt die Zellenhöhe. Der Unterschied zwischen der Zellenhöhe und die Zeichenhöhe ist das interne vorangestellte, wie durch das folgende Diagramm veranschaulicht:
   ----------  <------------------------------   |        |           |- Internal Leading  |   | |   |  |  <---------                    |   | |   |  |        |                       |- Cell Height   | |---|  |        |- Character Height     |   | |   |  |        |                       |   | |   |  |        |                       |   ----------  <------------------------------				
die folgende Formel berechnet die Punktgröße für eine Schriftart:
                (Height - Internal Leading) * 72   Point Size = --------------------------------                           LOGPIXELSY				
aus TEXTMETRIC -Datenstruktur werden die Höhe und interne vorangestellte Werte abgerufen. Der LOGPIXELSY-Wert wird von der GetDeviceCaps -Funktion ermittelt, wie oben beschrieben.

Runden der berechnete Schriftgrad auf die nächste Ganzzahl. Die Windows- MulDiv() -Funktion rundet das Ergebnis und ist eine hervorragende Wahl die vorherige Berechnung durchführen.
3.00 3.10 3,50 4.00 win16sdk TrueType

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 74299 – Letzte Überarbeitung: 11/21/2006 15:47:12 – Revision: 3.2

Microsoft Windows Software Development Kit 3.1, Microsoft Win32 Application Programming Interface

  • kbmt kbinfo KB74299 KbMtde
Feedback
>