druckbare Zeichen in Java
-
03-07-2019 - |
Frage
Hat jemand weiß, wie druckbare Zeichen in Java zu erkennen?
Nach einer Weile (Versuch / Fehler) I diese Methode erhalten:
public boolean isPrintableChar( char c ) {
Character.UnicodeBlock block = Character.UnicodeBlock.of( c );
return (!Character.isISOControl(c)) &&
c != KeyEvent.CHAR_UNDEFINED &&
block != null &&
block != Character.UnicodeBlock.SPECIALS;
}
Ich erhalte die Eingabe über KeyListener und kommen Ctr-'key‘ein Quadrat gedruckt. Mit dieser Funktion scheint ziemlich genug.
Bin ich einige Zeichen fehlt hier?
Lösung
Es scheint dies die „Schrift“ unabhängige Art und Weise ist.
public boolean isPrintableChar( char c ) {
Character.UnicodeBlock block = Character.UnicodeBlock.of( c );
return (!Character.isISOControl(c)) &&
c != KeyEvent.CHAR_UNDEFINED &&
block != null &&
block != Character.UnicodeBlock.SPECIALS;
}
Andere Tipps
Ich bin mir nicht ganz sicher, ob ich das Problem verstehen. Aber wenn Sie wollen feststellen, ob Zeichen Graphics-Objekt gezeichnet werden kann, und wenn nicht einige Platzhalter drucken char finden Sie vielleicht nützlich:
Font.canDisplay(int)
Es wird prüfen, ob Schrift spezifischen Codepunkt angezeigt werden kann (es ist mehr die prüfen, ob Schrift überhaupt angezeigt werden kann - da gibt es Zeichen, die angezeigt werden kann - wie ein -. Aber einige Schriftarten kippen sie angezeigt wird