Trong bài trước, bạn đã thấy cách tạo và đọc các loại mã vạch khác nhau bằng C#. Tuy nhiên, trong một số trường hợp nhất định, bạn phải xử lý các ký tự không phải tiếng Anh. Ví dụ: khi bạn làm việc với các ngôn ngữ Ả Rập, Latinh, Hy Lạp hoặc các ngôn ngữ tương tự. Trong những trường hợp như vậy, bạn có thể cần mã hóa các ký tự thành các tiêu chuẩn Unicode, tức là UTF-8. Theo đó, bài viết này trình bày cách tạo và đọc mã vạch bằng cách sử dụng mã hóa UTF-8 trong C#.
- API C# để tạo mã vạch bằng cách sử dụng mã hóa UTF-8
- Tạo mã vạch bằng mã hóa UTF-8 trong C#
- Đọc mã vạch với mã hóa UTF-8 trong C#
- Nhận giấy phép API miễn phí
API C# để tạo mã vạch bằng cách sử dụng mã hóa UTF-8
Aspose.BarCode cho .NET là một API C# mạnh mẽ để tạo và nhận dạng mã vạch. Sử dụng API, bạn có thể làm việc với nhiều loại ký hiệu mã vạch. Ngoài ra, API hỗ trợ tạo mã vạch bằng cách sử dụng mã hóa UTF-8. Bạn có thể tải xuống API hoặc cài đặt nó bằng NuGet.
PM> Install-Package Aspose.BarCode
Tạo mã vạch bằng cách sử dụng mã hóa UTF-8 trong C#
Sau đây là các bước để tạo mã vạch bằng cách sử dụng mã hóa UTF-8.
- Đầu tiên, tạo một phiên bản của lớp BarcodeGenerator và chỉ định loại mã vạch bằng EncodeTypes.
- Đặt văn bản của mã vạch bằng thuộc tính BarcodeGenerator.CodeText.
- Đặt mã hóa văn bản UTF-8 bằng thuộc tính BarcodeGenerator.Parameters.Barcode.QR.CodeTextEncoding(thay thế QR theo loại mã vạch bạn đã chỉ định trong hàm tạo BarcodeGenerator).
- Tạo mã vạch bằng phương thức BarcodeGenerator.GenerateBarCodeImage() và lưu hình ảnh trả về vào đối tượng Bitmap.
- Cuối cùng, lưu hình ảnh mã vạch dưới dạng tệp bằng phương pháp Bitmap.Save (String).
Mẫu mã sau đây cho thấy cách tạo mã vạch bằng cách sử dụng mã hóa UTF-8 trong C#.
// Tạo trình tạo mã vạch
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Pdf417);
// Đặt văn bản mã vạch
generator.CodeText = "منحة";
// Đặt độ phân giải
generator.Parameters.Resolution = 400;
// Đặt loại mã hóa
generator.Parameters.Barcode.Pdf417.CodeTextEncoding = Encoding.UTF8;
// Tạo mã vạch
Bitmap imgBarcode = generator.GenerateBarCodeImage();
// Lưu hình ảnh mã vạch
imgBarcode.Save("generate-barcode.png");
Đọc mã vạch được mã hóa UTF-8 bằng C#
Sau đây là các bước để nhận dạng mã vạch được mã hóa UTF-8 bằng C#.
- Sử dụng lớp BarCodeReader để tải hình ảnh mã vạch.
- Lặp qua từng BarCodeResult được trả về bởi phương thức BarCodeReader.ReadBarCodes().
- Tạo một đối tượng của lớp Mã hóa và đặt mã hóa thành UTF-8.
- Lấy mảng char từ các byte được trả về bởi đối tượng BarCodeResult.
- Xây dựng chuỗi Unicode từ các ký tự để lấy văn bản mã vạch.
- Cuối cùng, in văn bản mã vạch đã truy xuất.
Mẫu mã sau đây cho thấy cách nhận dạng mã vạch bằng cách sử dụng mã hóa UTF-8 trong C#.
// Nhận dạng mã vạch trên
using (BarCodeReader reader = new BarCodeReader("generate-barcode.png"))
{
// Đọc mã vạch
foreach (BarCodeResult result in reader.ReadBarCodes())
{
// Đặt mã hóa
Encoding unicode = Encoding.UTF8;
// Lấy mảng ký tự từ các byte
char[] unicodeChars = new char[unicode.GetCharCount(result.CodeBytes, 0, result.CodeBytes.Length)];
unicode.GetChars(result.CodeBytes, 0, result.CodeBytes.Length, unicodeChars, 0);
// Xây dựng chuỗi unicode
string strCodeText = new string(unicodeChars);
Console.WriteLine(strCodeText);
}
}
Nhận giấy phép API miễn phí
Trong trường hợp bạn quan tâm đến việc thử và sử dụng API, bạn có thể nhận giấy phép tạm thời miễn phí.
Sự kết luận
Trong bài viết này, bạn đã học cách tạo mã vạch bằng cách sử dụng mã hóa UTF-8 trong C#. Hơn nữa, bạn đã biết cách nhận biết và đọc mã vạch được mã hóa UTF-8. Bạn có thể khám phá thêm về API mã vạch C# bằng cách sử dụng tài liệu.