SetTextJustification-Funktion (wingdi.h)
Die SetTextJustification-Funktion gibt den Speicherplatz an, den das System den Umbruchzeichen in einer Textzeichenfolge hinzufügen soll. Der Speicherplatz wird hinzugefügt, wenn eine Anwendung die Funktionen TextOut oder ExtTextOut aufruft.
Syntax
BOOL SetTextJustification(
[in] HDC hdc,
[in] int extra,
[in] int count
);
Parameter
[in] hdc
Ein Handle für den Gerätekontext.
[in] extra
Der gesamte zusätzliche Speicherplatz in logischen Einheiten, der der Textzeile hinzugefügt werden soll. Wenn der aktuelle Zuordnungsmodus nicht MM_TEXT ist, wird der durch den nBreakExtra-Parameter identifizierte Wert transformiert und auf das nächste Pixel gerundet.
[in] count
Die Anzahl der Umbruchzeichen in der Zeile.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.
Hinweise
Das Umbruchzeichen ist in der Regel das Leerzeichen (ASCII 32), aber es kann durch eine Schriftart als ein anderes Zeichen definiert werden. Die GetTextMetrics-Funktion kann verwendet werden, um das Umbruchzeichen einer Schriftart abzurufen.
Die TextOut-Funktion verteilt den angegebenen zusätzlichen Abstand gleichmäßig auf die Umbruchzeichen in der Zeile.
Die GetTextExtentPoint32-Funktion wird immer mit der SetTextJustification-Funktion verwendet. Manchmal berücksichtigt die GetTextExtentPoint32-Funktion die Begründung beim Berechnen der Breite einer angegebenen Zeile vor der Begründung, manchmal ist dies nicht der Fall. Weitere Informationen hierzu finden Sie unter GetTextExtentPoint32. Diese Breite muss bekannt sein, bevor ein entsprechender nBreakExtra-Wert berechnet werden kann.
SetTextJustification kann verwendet werden, um eine Zeile zu rechtfertigen, die mehrere Zeichenfolgen in verschiedenen Schriftarten enthält. In diesem Fall muss jede Zeichenfolge separat begründet werden.
Da Rundungsfehler während der Begründung auftreten können, behält das System einen ausgeführten Fehlerbegriff bei, der den aktuellen Fehlerwert definiert. Bei der Begründung einer Zeile, die mehrere Ausführungen enthält, verwendet GetTextExtentPoint automatisch diesen Fehlerbegriff, wenn der Umfang der nächsten Ausführung berechnet wird, sodass TextOut den Fehler in die neue Ausführung überblenden kann. Nachdem jede Zeile gerechtfertigt wurde, muss dieser Fehlerbegriff gelöscht werden, um zu verhindern, dass sie in die nächste Zeile eingefügt wird. Der Begriff kann gelöscht werden, indem SetTextJustification aufgerufen wird, wobei nBreakExtra auf null festgelegt ist.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wingdi.h (windows.h einschließen) |
Bibliothek | Gdi32.lib |
DLL | Gdi32.dll |
Weitere Informationen
Schriftart- und Textfunktionen