Ich habe eine alte Java-App verwendet, die in Wingdings nicht gut angezeigt wurde.
Insbesondere gaben verschiedene Websites an, dass !
(0x21) eine Bleistiftmarkierung wäre, aber nicht richtig angezeigt wurde (es wurde in dieser App als Quadrat angezeigt. Es wird als Zeichen behandelt, das nicht konvertiert werden kann).
Ich habe mich gefragt, ob es an einer alten App liegt (es war eine Swing-basierte App, also wahrscheinlich Java7 oder früher), aber anscheinend können weder Java8 oder Java11 noch JavaFX die Symbole gut anzeigen.
Ich habe die Font-Klasse von awt verwendet, um den Bereich zu überprüfen, der in der entsprechenden Schriftart angezeigt werden kann.
WingdingsTest.java
import java.awt.Font;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
public class WingdingsTest {
public static void main(String[] args) {
final Font font = new Font("wingdings", Font.PLAIN, 32);
final String codes = IntStream.range(0, 0x10000)
.filter(font::canDisplay)
.mapToObj(Integer::toHexString)
.collect(Collectors.joining(","));
System.out.println(codes);
}
}
Betrachtet man die Ergebnisse, so scheint es, dass U + 0009 (TAB), U + 000a (LF), U + 000d (CR), um U + 20xx und um U + f0xx angezeigt werden können.
Als ich es tatsächlich versuchte, war der Bereich um U + f021 bis U + f0ff das Symbol für Wingdings. Mit anderen Worten, wenn Sie die 0x21-Bleistiftmarkierung anzeigen möchten, können Sie den U + f021-Codepunkt anzeigen.
Dieser Bereich scheint der sogenannte äußere Zeichenbereich (privater Bereich) von Unicode zu sein.
Wenn Sie sich die Erklärung von "Fremdzeichen in JIS X 0221 (Unicode)" in "Fremdzeichen" in dieser Wikipedia ansehen, heißt es wie folgt.
Symbolschrift-Glyphen wie Wingdings sind einigen von U + F020 bis U + F0FF in Unicode zugeordnet
Als ich es ausprobierte, sahen nicht nur Wingdings, sondern auch Webdings und Symbol-Schriftarten ähnlich aus.
Recommended Posts