Gibt es eine akzeptierte Möglichkeit Glyphen zu simulieren , um zu justieren Text Zahlen ?
Hintergrund
Textabbildungen sind "Kleinbuchstaben". Normalerweise verwenden Sie Kleinbuchstaben, wenn Sie auch Kleinbuchstaben verwenden (z. B. in der Mitte eines Satzes).
Tastaturen wurden nie mit Groß- und Kleinbuchstaben erstellt. und Unicode codiert sie nicht speziell, da "sie nicht als separate Zeichen von Linienfiguren betrachtet werden, sondern nur als eine andere Art, dieselben Zeichen zu schreiben".
Was mich zu meiner Frage bringt; Was ist die akzeptierte Methode, um aus den Standard- "Großbuchstaben" einer Schriftart Kleinbuchstaben zu erstellen?
Wikipedia erwähnt, dass normalerweise :
012
sindx
-höhe68
Aufsteiger haben34579
Nachkommen haben
Mein erster Versuch (in Photoshop) wäre:
- smush 012
- Schub 34579 nach unten
- Lass 68 wo sie sind:
Aber die skwooshed Zahlen (0, 1, 2) sehen ausgesprochen unangenehm aus.
Wenn das Unicode-Konsortium vorschlägt, dass "Kleinbuchstaben" einfach aus "Großbuchstaben" aufgebaut werden können - was empfehle ich?
Idealerweise in HTML
Mein Endziel ist es, Kleinbuchstaben in einem Browser anzuzeigen. Ich weiß, dass einige Schriftarten (z. B. Georgia) bereits alle ihre Ziffern in Kleinbuchstaben anzeigen :
Aber ich frage nicht, wie ich zu Georgia wechseln soll . Ich frage , wie man bauen Versalziffern aus Nicht-Futter diejenigen.
Und da dies für die Anzeige im Web vorgesehen ist, stelle ich fest, dass ich wahrscheinlich die Formatierung pro Zeichen anwenden muss:
<!doctype html">
<html>
<head>
<style type="text/css">
body {
font-family: "Segoe UI", "Calibri", sans-serif;
font-size: larger;
}
.xheight {
font-size: 1.5ex;
}
.descender {
position: relative;
bottom: -0.4ex;
}
</style>
</head>
<body>
<p>In the year <span class="xheight">21</span><span class="descender">5</span><span>6</span> the Romulan war...
</body>
</html>
Rendern als:
Was wiederum nicht so gut aussieht, wie ich es für richtig halte.
Hey schau, ein Penny!
quelle
A
(U+0041
), Kleinbuchstabena
(U+0061
) und sogar sᴍᴀʟʟ cᴀᴘɪᴛᴀʟᴀ
(U+1D00
)? Das heißt, was könnte die Begründung sein, die getrennte Groß- und Kleinbuchstaben ausschließt, aber getrennte Groß- und Kleinbuchstaben enthält?Die richtige Methode zum Rendern von Ziffern / Ziffern in Kleinbuchstaben oder "Oldstyle-Zahlen" ist die Verwendung von CSS zur Auswahl einer geeigneten Schriftartfunktion. Offensichtlich sollte die verwendete Schriftart diese Schriftartfunktion dann in erster Linie unterstützen. Die Unterstützung der realen Welt mit Webfonts scheint nicht zu stark zu sein.
Die gesuchte CSS-Einstellung lautet
und die Dokumentation:
Die Dokumentation der OpenType-Funktionen und
onum
insbesondere der Funktionen finden Sie in der OpenType Layout-Tag-Registrierung von Microsoft .Eine alternative Dokumentation zu Schriftfunktionen finden Sie im Artikel So codieren Sie OpenType-Funktionen in CSS .
Offiziell solltest du verwenden
Laut Mozillas Referenz zur Browserkompatibilität scheint die Unterstützung dafür jedoch noch schwächer zu sein .
Theoretisch ist dies besser, da es sich nicht direkt auf OpenType-Funktionen bezieht und daher auch mit Nicht-OpenType-Schriftarten funktionieren sollte. Auf die gleiche Weise sollten Sie verwenden:
Small Caps aktivieren . Verwenden Sie keine OpenType-Funktionseinstellungen wie
um diesen effekt zu erzielen ist das
font-variant
eigentum schon gut unterstützt.quelle
font-variant: small-caps;
weil das FAKE Small Caps schafft . Verwenden Sie immer die andere und immer OpenType-Schriftarten. Einfach und gelöst.acceptable
wenn dassmall-caps
Feature gefälscht ist. Dies ist keine Voraussetzung, und ein qualitativ hochwertiger Benutzeragent würde das Richtige tun (ordnen Sie ihn der OpenType-Funktion zu). Ich bin damit einverstanden, dass Sie verwenden sollten, wenn Sie statt gefälschter Kapitälchen lieber keine Veränderung habenfont-feature-settings
. Normalerweise sind gefälschte Kapitälchen besser, als überhaupt keine Wirkung zu haben.