Proyek ini terdiri dari perpustakaan yang menyediakan akses ke beberapa data yang terdapat dalam Database Karakter Unicode.
Unikode 13.0 Emoji 13.0
UnicodeRadicalStrokeCount.StrokeCount sekarang bertipe System.SByte, bukan bertipe System.Byte.
Dapatkan paket versi terbaru di NuGet: https://www.nuget.org/packages/UnicodeInformation/. Setelah perpustakaan diinstal di proyek Anda, Anda akan menemukan semua yang Anda perlukan di namespace System.Unicode.
Segala sesuatu yang disediakan oleh perpustakaan akan berada di bawah namespace System.Unicode
. Dokumentasi XML harus cukup lengkap sehingga Anda dapat menavigasi API tanpa tersesat.
Dalam kondisi saat ini, proyek ini ditulis dalam C# 7.3, dapat dikompilasi oleh Roslyn, dan menargetkan .NET Standard 2.0 dan .NET Standard 1.1. Pustaka UnicodeInformation menyertakan subset (besar) dari Basis Data Karakter Unicode resmi yang disimpan dalam format file khusus.
Program berikut akan menampilkan informasi beberapa karakter:
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 ) ;
}
}
}
Penjelasan:
UnicodeInfo.GetCharInfo(int)
mengembalikan struktur UnicodeCharInfo
yang menyediakan akses ke berbagai bit informasi yang terkait dengan titik kode yang ditentukan.UnicodeInfo.GetDisplayText(UnicodeCharInfo)
adalah metode pembantu yang menghitung teks tampilan untuk titik kode yang ditentukan. Karena beberapa titik kode tidak dirancang untuk ditampilkan secara mandiri, hal ini akan mencoba membuat karakter tertentu lebih dapat ditampilkan. Algoritme yang digunakan untuk menyediakan teks tampilan cukup sederhana, dan hanya akan mempengaruhi titik kode yang sangat spesifik. (misalnya Karakter Kontrol) Untuk sebagian besar titik kode, ini hanya akan mengembalikan representasi string langsung.UnicodeCharInfo.Name
mengembalikan nama titik kode seperti yang ditentukan oleh standar Unicode. Harap dicatat bahwa beberapa karakter, berdasarkan desain, tidak akan diberi nama apa pun dalam standar. (misalnya karakter kontrol) Karakter tersebut, bagaimanapun, mungkin memiliki nama alternatif yang ditetapkan padanya, yang dapat Anda gunakan sebagai cadangan. (misalnya UnicodeCharInfo.OldName
)UnicodeCharInfo.OldName
mengembalikan nama karakter seperti yang didefinisikan dalam Unicode 1.0, bila berlaku dan berbeda dari nama saat ini.UnicodeCharInfo.Category
mengembalikan kategori yang ditetapkan ke titik kode yang ditentukan.NB: Properti UCD ISO_Comment tidak akan pernah disertakan karena properti ini kosong di semua versi Unicode baru.
Proyek UnicodeInformation.Builder menangani pembuatan file bernama ucd.dat. File ini berisi data Unicode yang dikompresi oleh algoritma deflate .NET, dan harus disertakan dalam UnicodeInformation.dll pada saat kompilasi.