• Chủ Nhật, 21/12/2003 16:34 (GMT+7)

    Hiển thị Unicode với font hệ thống MS Sans Serif

    Câu hỏi :
    Hỏi: Windows 98/98se có thể hiển thị tiếng Việt Unicode với font hệ thống MS Sans Serif không? Nếu copy font hệ thống của Win 2000 vào Windows 98 thì khi ta lập trình bằng Visual Basic 6.0 có thể hiển thị được tiếng Việt Unicode không?

    Trả lời :

    Đáp: Font MS Sans Serif là dạng font bitmap, còn Win9x và WinMe thì chỉ hỗ trợ hạn chế mã Unicode nên nó không thể hiển thị các ký tự Unicode tiếng Việt bằng font bitmap MS Sans Serif (hay bất kỳ font bitmap nào khác). Tuy nhiên bạn có thể dùng font Truetype tên là “Microsoft Sans Serif” của WinXP (có dạng chữ y như font MS Sans Serif) và cài vào Win9x hay WinMe để hiển thị các ký tự Unicode tiếng Việt (bằng cách gọi hàm TextOutW()). Ngoài ra bạn cũng có thể dùng bất kỳ font Truetype bất ky có hỗ trợ Unicode khác như Times New Roman, Courier, Arial... Trên Win9x và WinMe, chương trình được viết bằng VB hay VC++ đều có thể gọi hàm API TextOutW() để hiển thị các ký tự Unicode tiếng Việt, tuy nhiên các hạn chế chính về mã Unicode trên Win9x và WinMe là:

    • Môi trường lập trình VB hay VC++ chưa cho phép nhập văn bản Unicode tiếng Việt trực tiếp vào các phần tử giao diện trong lúc thiết kế trực quan giao diện.

    • Môi trường lập trình VB hay VC++ chưa cho phép nhập văn bản Unicode tiếng Việt trực tiếp trong lúc soạn thảo chương trình (trong các lệnh cần dữ liệu chuỗi ký tự).

    • Khi ứng dụng được dịch bởi VB hay VC++ chạy trên Win9x hay WinMe, các phần tử giao diện sẵn có như TextEdit, ListBox, ComboBox... không thể nhận dữ liệu Unicode được nhập từ bàn phím.

    Tóm lại việc viết 1 ứng dụng hỗ trợ nhập liệu, xử lý và hiển thị dữ liệu Unicode tiếng Việt trên Win9x hay WinMe là việc làm đặc biệt khó khăn, những người lập trình không chuyên khó lòng viết nổi.

    Chuyên mục: Lập trình