WYSIWYG-Anzeige und -Ausgabe

Die meisten Anwendungen versuchen, die WYSIWYG-Ausgabe (was Sie sehen, was Sie erhalten) zu unterstützen. Das bedeutet, dass Text, der im Anwendungsfenster mit einer 10-Punkt-Helvetica-Fettschrift gezeichnet wurde, beim Drucken ähnlich aussehen sollte. Das Abrufen einer echten WYSIWYG-Ausgabe ist praktisch unmöglich und in den meisten Fällen sogar unerwünscht. Dies ist zum Teil auf die Unterschiede in den Video- und Druckertechnologien zurückzuführen; ein Pixel auf einem Bildschirm ist in der Regel größer als ein Punkt auf einem gängigen Laserdrucker. Auch die Sichtdistanzen unterscheiden sich. Ein Computerbenutzer sitzt normalerweise etwa zwei Meter vom Bildschirm entfernt, aber die Augen eines Lesers sind in der Regel einen Fuß oder weniger von der gedruckten Seite entfernt.

Um Lesbarkeitsunterschiede zwischen Bildschirmen und gedruckter Seite auszugleichen, unterstützt das System eine Einheit namens logischer Zoll, die immer in Pixel angegeben wird. Bei einer Videoanzeige ist der logische Zoll immer größer als der physische Zoll, um den längeren Betrachtungsabstand und die (im Allgemeinen) gröbere Auflösung auszugleichen. Bei Druckern ist der logische Zoll immer gleich dem physischen Zoll.

Um einen WYSIWYG-Effekt beim Zeichnen von Text zu erhalten, sind zwei verwandte Probleme verbunden: Das Aussehen einzelner Zeichen und das geräteunabhängige Seitenlayout. Um das erste Problem zu beheben, kann eine Anwendung die CreateFont-Funktion verwenden, um den Schriftartnamen und die Größe einer idealen (oder logischen) Schriftart anzugeben, und dann die SelectObject-Funktion aufrufen, um den Anzeige- oder Druckergerätekontext zu identifizieren. Wenn die Anwendung SelectObject aufruft , wählt das System eine physische Schriftart aus, die der angegebenen logischen Schriftart am ehesten entspricht. Wenn das System die Anzeigeschriftart auswählt, wählt es eine physische Schriftart aus, die größer als die tatsächliche Größe ist. Dies tritt aufgrund des größeren logischen Zolls auf dem Display auf. Aus Sicht des Benutzers scheint es jedoch sehr nahe an der richtigen Höhe zu liegen. Wenn das System die Schriftart für den Drucker auswählt, wählt es eine physische Schriftart aus, die tatsächlich der angeforderten Größe entspricht. Weitere Informationen zu Schriftarten und Textausgabe finden Sie unter Schriftarten und Text.

Das zweite Problem, das des geräteunabhängigen Seitenlayouts, kann durch die Verwendung von TrueType-Metriken behoben werden. Dies gilt auch dann, wenn die Kompatibilität mit 16-Bit-Versionen von Windows beibehalten wird. Weitere Informationen finden Sie unter Verwenden portabler TrueType-Metriken.

Um beim Zeichnen von Bitmapgrafiken einen WYSIWYG-Effekt zu erhalten, kann eine Anwendung die Breite und Höhe des Bildschirms und der gedruckten Seite in logischen Zoll abrufen. Mit diesen Werten kann die Anwendung horizontale und vertikale Skalierungsfaktoren erstellen, um den Anteil von Bitmapbildern beim Zeichnen auf einem Drucker beizubehalten. Weitere Informationen zu Bitmaps und Bitmapausgabe finden Sie unter Bitmaps.