Dieses Projekt besteht aus einer Bibliothek, die Zugriff auf einige der in der Unicode-Zeichendatenbank enthaltenen Daten bietet.
Unicode 13.0 Emoji 13.0
UnicodeRadicalStrokeCount.StrokeCount ist jetzt vom Typ System.SByte statt vom Typ System.Byte.
Holen Sie sich die neueste Version des Pakets auf NuGet: https://www.nuget.org/packages/UnicodeInformation/. Sobald die Bibliothek in Ihrem Projekt installiert ist, finden Sie alles, was Sie brauchen, im System.Unicode-Namespace.
Alles, was die Bibliothek bereitstellt, befindet sich unter dem Namensraum System.Unicode . Die XML-Dokumentation sollte vollständig genug sein, damit Sie in der API navigieren können, ohne sich zu verlaufen.
In seinem aktuellen Zustand ist das Projekt in C# 7.3 geschrieben, kann von Roslyn kompiliert werden und zielt sowohl auf .NET Standard 2.0 als auch auf .NET Standard 1.1 ab. Die Bibliothek UnicodeInformation enthält eine (große) Teilmenge der offiziellen Unicode-Zeichendatenbank, die in einem benutzerdefinierten Dateiformat gespeichert ist.
Das folgende Programm zeigt Informationen zu einigen Zeichen an:
using System ;
using System . Text ;
using System . Unicode ;
namespace Example
{
internal static class Program
{
private static void Main ( )
{
Console . OutputEncoding = Encoding . Unicode ;
PrintCodePointInfo ( 'A' ) ;
PrintCodePointInfo ( '∞' ) ;
PrintCodePointInfo ( 0x1F600 ) ;
}
private static void PrintCodePointInfo ( int codePoint )
{
var charInfo = UnicodeInfo . GetCharInfo ( codePoint ) ;
Console . WriteLine ( UnicodeInfo . GetDisplayText ( charInfo ) ) ;
Console . WriteLine ( "U+" + codePoint . ToString ( "X4" ) ) ;
Console . WriteLine ( charInfo . Name ?? charInfo . OldName ) ;
Console . WriteLine ( charInfo . Category ) ;
}
}
}Erläuterungen:
UnicodeInfo.GetCharInfo(int) gibt eine Struktur UnicodeCharInfo zurück, die Zugriff auf verschiedene Informationen bietet, die dem angegebenen Codepunkt zugeordnet sind.UnicodeInfo.GetDisplayText(UnicodeCharInfo) ist eine Hilfsmethode, die einen Anzeigetext für den angegebenen Codepunkt berechnet. Da einige Codepunkte nicht für die eigenständige Anzeige konzipiert sind, wird dadurch versucht, das angegebene Zeichen besser anzeigbar zu machen. Der zum Bereitstellen eines Anzeigetextes verwendete Algorithmus ist recht einfach und wirkt sich nur auf ganz bestimmte Codepunkte aus. (z. B. Steuerzeichen) Bei den meisten Codepunkten wird dadurch einfach die direkte Zeichenfolgendarstellung zurückgegeben.UnicodeCharInfo.Name gibt den Namen des Codepunkts zurück, wie im Unicode-Standard angegeben. Bitte beachten Sie, dass einigen Charakteren im Standard konstruktionsbedingt kein Name zugewiesen ist. (z. B. Steuerzeichen) Diesen Zeichen können jedoch alternative Namen zugewiesen werden, die Sie als Ersatz verwenden können. (z. B. UnicodeCharInfo.OldName )UnicodeCharInfo.OldName gibt den Namen des Zeichens zurück, wie in Unicode 1.0 definiert, sofern zutreffend und vom aktuellen Namen abweichend.UnicodeCharInfo.Category gibt die Kategorie zurück, die dem angegebenen Codepunkt zugewiesen ist.Hinweis: Die UCD-Eigenschaft ISO_Comment wird niemals enthalten sein, da diese in allen neuen Unicode-Versionen leer ist.
Das Projekt UnicodeInformation.Builder kümmert sich um die Generierung einer Datei namens ucd.dat. Diese Datei enthält Unicode-Daten, die durch den Deflate-Algorithmus von .NET komprimiert wurden, und sollte bei der Kompilierung in UnicodeInformation.dll enthalten sein.