يتكون هذا المشروع من مكتبة توفر الوصول إلى بعض البيانات الموجودة في قاعدة بيانات أحرف Unicode.
يونيكود 13.0 الرموز التعبيرية 13.0
أصبح UnicodeRadicalStrokeCount.StrokeCount الآن من النوع System.SByte بدلاً من النوع System.Byte.
احصل على أحدث إصدار من الحزمة على NuGet: https://www.nuget.org/packages/UnicodeInformation/. بمجرد تثبيت المكتبة في مشروعك، ستجد كل ما تحتاجه في مساحة الاسم System.Unicode.
كل ما توفره المكتبة سيكون تحت مساحة الاسم System.Unicode . يجب أن تكون وثائق XML كاملة بما يكفي حتى تتمكن من التنقل عبر واجهة برمجة التطبيقات دون أن تضيع.
في حالته الحالية، المشروع مكتوب بلغة C# 7.3، ويمكن تجميعه بواسطة Roslyn، ويستهدف كلاً من .NET Standard 2.0 و.NET Standard 1.1. تتضمن مكتبة UnicodeInformation مجموعة فرعية (كبيرة) من قاعدة بيانات Unicode Character الرسمية المخزنة بتنسيق ملف مخصص.
سيعرض البرنامج التالي معلومات عن بعض الأحرف:
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 ) ;
}
}
}التفسيرات:
UnicodeInfo.GetCharInfo(int) بإرجاع بنية UnicodeCharInfo التي توفر الوصول إلى أجزاء مختلفة من المعلومات المرتبطة بنقطة التعليمات البرمجية المحددة.UnicodeInfo.GetDisplayText(UnicodeCharInfo) هو أسلوب مساعد يحسب نص العرض لنقطة الكود المحددة. نظرًا لأن بعض نقاط التعليمات البرمجية لم يتم تصميمها ليتم عرضها بطريقة مستقلة، فسيحاول هذا جعل الحرف المحدد أكثر قابلية للعرض. تعتبر الخوارزمية المستخدمة لتوفير نص العرض مبسطة للغاية، ولن تؤثر إلا على نقاط رمز محددة جدًا. (مثل أحرف التحكم) بالنسبة لمعظم نقاط التعليمات البرمجية، سيؤدي هذا ببساطة إلى إرجاع تمثيل السلسلة المباشر.UnicodeCharInfo.Name بإرجاع اسم نقطة التعليمات البرمجية كما هو محدد بواسطة معيار Unicode. يرجى ملاحظة أن بعض الأحرف، حسب التصميم، لن يكون لها أي اسم مخصص لها في المعيار. (على سبيل المثال، أحرف التحكم) قد يكون لهذه الأحرف أسماء بديلة مخصصة لها، والتي يمكنك استخدامها كبديل. (على سبيل المثال UnicodeCharInfo.OldName )UnicodeCharInfo.OldName بإرجاع اسم الحرف كما هو محدد في Unicode 1.0، عندما يكون ذلك ممكنًا ومختلفًا عن الاسم الحالي.UnicodeCharInfo.Category بإرجاع الفئة المخصصة لنقطة الرمز المحددة.ملحوظة: خاصية UCD ISO_Comment لن يتم تضمينها أبدًا نظرًا لأن هذا فارغ في جميع إصدارات Unicode الجديدة.
يعتني مشروع UnicodeInformation.Builder بإنشاء ملف اسمه ucd.dat. يحتوي هذا الملف على بيانات Unicode مضغوطة بواسطة خوارزمية الانكماش الخاصة بـ .NET، ويجب تضمينها في UnicodeInformation.dll عند التحويل البرمجي.