C# با رمزگذاری UTF-8 بارکد تولید کنید

در پست قبلی نحوه تولید و خواندن انواع بارکد با استفاده از سی شارپ را مشاهده کردید. با این حال، در موارد خاص، شما باید با شخصیت های غیر انگلیسی برخورد کنید. به عنوان مثال، وقتی با زبان های عربی، لاتین، یونانی یا مشابه کار می کنید. در چنین مواردی، ممکن است لازم باشد کاراکترها را در استانداردهای یونیکد رمزگذاری کنید، مثلاً UTF-8. مطابق با آن، این مقاله نحوه تولید و خواندن بارکد با استفاده از رمزگذاری UTF-8 در سی شارپ را پوشش می‌دهد.

C# API برای تولید بارکد با استفاده از رمزگذاری UTF-8

Aspose.BarCode for .NET یک API قدرتمند C# برای تولید و شناسایی بارکد است. با استفاده از API، می توانید با طیف وسیعی از نمادهای بارکد کار کنید. علاوه بر این، API از تولید بارکد با استفاده از رمزگذاری UTF-8 پشتیبانی می کند. می‌توانید API را دانلود یا با استفاده از NuGet نصب کنید.

PM> Install-Package Aspose.BarCode

تولید بارکد با استفاده از رمزگذاری UTF-8 در سی شارپ

در زیر مراحل تولید بارکد با استفاده از رمزگذاری UTF-8 آمده است.

  • ابتدا یک نمونه از کلاس BarcodeGenerator ایجاد کنید و نوع بارکد را با استفاده از EncodeTypes مشخص کنید.
  • متن بارکد را با استفاده از ویژگی BarcodeGenerator.CodeText تنظیم کنید.
  • کدگذاری متن UTF-8 را با استفاده از ویژگی BarcodeGenerator.Parameters.Barcode.QR.CodeTextEncoding تنظیم کنید (با توجه به نوع بارکدی که در سازنده BarcodeGenerator مشخص کرده اید، QR را جایگزین کنید).
  • بارکد را با استفاده از روش BarcodeGenerator.GenerateBarCodeImage() تولید کنید و تصویر برگشتی را در یک شی Bitmap ذخیره کنید.
  • در نهایت با استفاده از روش Bitmap.Save(String) تصویر بارکد را به صورت فایل ذخیره کنید.

نمونه کد زیر نحوه تولید بارکد با استفاده از رمزگذاری UTF-8 در سی شارپ را نشان می دهد.

// یک تولید کننده بارکد ایجاد کنید
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Pdf417);

// تنظیم متن بارکد
generator.CodeText = "منحة";

// تنظیم وضوح
generator.Parameters.Resolution = 400;

// تنظیم نوع رمزگذاری
generator.Parameters.Barcode.Pdf417.CodeTextEncoding = Encoding.UTF8;

// بارکد تولید کنید
Bitmap imgBarcode = generator.GenerateBarCodeImage();

// ذخیره تصویر بارکد
imgBarcode.Save("generate-barcode.png");

خواندن بارکد رمزگذاری شده UTF-8 با استفاده از C#

در زیر مراحل تشخیص بارکد کدگذاری شده UTF-8 با استفاده از C# آمده است.

  • از کلاس BarCodeReader برای بارگذاری تصویر بارکد استفاده کنید.
  • از طریق هر BarCodeResult بازگردانده شده توسط روش BarCodeReader.ReadBarCodes() حلقه بزنید.
  • یک شی از کلاس Encoding ایجاد کنید و کدگذاری را روی UTF-8 قرار دهید.
  • آرایه نویسه را از بایت های بازگردانده شده توسط شی BarCodeResult دریافت کنید.
  • برای دریافت متن بارکد، رشته یونیکد را از کاراکترها بسازید.
  • در نهایت متن بارکد بازیابی شده را چاپ کنید.

نمونه کد زیر نحوه تشخیص بارکدها را با استفاده از رمزگذاری UTF-8 در سی شارپ نشان می دهد.

// بارکد بالا را بشناسید
using (BarCodeReader reader = new BarCodeReader("generate-barcode.png"))
{
    // بارکدها را بخوانید
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        // رمزگذاری را تنظیم کنید
        Encoding unicode = Encoding.UTF8;

        // آرایه کاراکترها را از بایت ها دریافت کنید
        char[] unicodeChars = new char[unicode.GetCharCount(result.CodeBytes, 0, result.CodeBytes.Length)];
        unicode.GetChars(result.CodeBytes, 0, result.CodeBytes.Length, unicodeChars, 0);

        // ساخت رشته یونیکد
        string strCodeText = new string(unicodeChars);
        Console.WriteLine(strCodeText);
    }
}

مجوز API رایگان دریافت کنید

در صورتی که علاقه مند به امتحان و استفاده از API هستید، می توانید یک مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله با نحوه تولید بارکد با استفاده از رمزگذاری UTF-8 در سی شارپ آشنا شدید. علاوه بر این، نحوه تشخیص و خواندن یک بارکد رمزگذاری شده UTF-8 را دیده اید. می‌توانید با استفاده از مستندات درباره API بارکد C# بیشتر کاوش کنید.

لینک های مربوطه