Nya.vn

Thư viện thiết kế bỏ túi

HuyKTS.com - Thư viện thiết kế bỏ túi

Trang mã ký tự – Codepages trong Font chữ

Chào các bạn! Tôi là Huy KTS, một người yêu thích công việc thiết kế.
Đây là bài viết các trang mã ký tự – Codepages trong Font chữ, là các nhóm ký tự liên quan với nhau được nhóm lại và định danh theo mã ký tự. Biết về Codepages giúp bạn hiểu được tại sao có mã Unicode, tại sao mỗi ký tự đều có một mã định danh Unicode riêng.

Trang mã ký tự – Codepages là gì?

Trang mã ký tự (Codepages) là trang chứa danh sách ký tự kèm theo mã ký tự tương ứng. Codepages dùng để gom các ký tự cần thiết cho một nhóm chữ viết hay ký hiệu. Đặt nhóm ký tự này vào cùng một hệ thống mã hóa ký tự.
Có nhiều Codepages khác nhau, được phân biệt dựa trên hãng sản xuất hoặc bộ chữ viết cụ thể. Các Codepages này có lịch sử hình thành và mục đích sử dụng khác nhau.
Ví dụ 1258 Windows Vietnamese là trang mã đầu tiên của Microsoft hỗ trợ ký tự gõ chữ tiếng Việt. Tuy nhiên, trang mã này không thực sự phổ biến với người dùng Việt Nam. Thời kỳ đầu máy tính du nhập vào Việt Nam, Font chữ hỗ trợ gõ tiếng Việt còn sơ khai. Các hãng phần mềm Việt Nam đua nhau tạo ra trang mã riêng với bộ gõ khác nhau. Hàng loạt bộ Font chữ được tạo ra theo tên thương hiệu như .vn hay VNI-, không theo chuẩn chung. Kết quả là các Font chữ Việt Nam không tương thích với trang mã Unicode quốc tế. Chính vì cách định danh mã ký tự không theo chuẩn chung dẫn đến lỗi hiển thị văn bản.
Lịch sử các Codepages ngoài thế giới cũng trải qua một thời kỳ hình thành tự phát. Các hãng phát triển phần mềm tự tạo ra các Codepages cho sản phẩm của mình. Các hãng phần cứng cũng đua nhau tạo ra Codepages riêng. Một số nước cũng tự tạo Codepages làm tiêu chuẩn riêng trình bày chữ viết cho quốc gia mình. Kết quả là chúng ta có một danh sách các Codepages bên dưới.

Danh sách nhóm ký tự phổ biến – Codepages:

Danh sách tất cả các trang mã ký tự (Codepages) có trong bảng đặc tả OS/2 là các nhóm ký tự được phân chia theo từng nhà cung cấp bản thiết kế mã ký tự hoặc từng ngôn ngữ chữ viết riêng.

  • Một số trang mã ký tự phổ biến:
    • Latin 1: Bộ chữ Latin của Tây Âu.
    • Latin 2: Bộ chữ Latin của Đông Âu.
    • Kirin: Bộ chữ Kirin/Cyrillic/Slav (Đông Âu).
    • Greek: Chữ Hy Lạp.
    • Turkish: Chữ Thổ Nhĩ kỳ.
    • Hebrew: Chữ Do Thái.
    • Arabic: Chữ Ả Rập.
    • Windows Baltic: Chữ của vành đai Baltic.
    • Vietnamese: Chữ Latin dành cho Việt Nam.
  • Các nhà thiết kế trang mã ký tự chính:
    • ANSI: Viện tiêu chuẩn quốc gia Hoa Kỳ.
    • IBM: Hãng sản xuất thiết bị OEM.
    • OEM: Các hãng sản xuất thiết bị phần cứng.
    • Microsoft (MS): Hãng phần mềm OEM.
    • Macintosh (Apple): Một hãng sản xuất thiết bị phần cứng và phần mềm.

Chúng ta cần hiểu một số khái niệm chung:

Ký tự là gì?

Ký tự (Glyph) là một đơn vị văn bản nhỏ nhất có giá trị ngữ nghĩa. Nó là từng con số, chữ cái, dấu phụ, ký tự ghép, biến thể của ký tự trong Font chữ.

Mã ký tự là gì?

Mã ký tự (Character Code) là mã định danh ký tự để khai báo một đối tượng ký tự riêng biệt. Thiết bị phần cứng dựa vào thông tin khai báo này để nhận diện một ký tự trong chuỗi tín hiệu. Mỗi mã ký tự được xác định bằng một chuỗi ký tự riêng biệt. Ví dụ trang mã Unicode định danh ký tự bằng chuỗi “U+” kết hợp với số thập lục phân. Chuỗi mã ký tự này được lấy từ không gian mã quy hoạch sẵn. Các hãng thiết kế mã ký tự dựa vào không gian mã có sẵn để định danh các ký tự.

Quá trình biên mã ký tự là gì?

Biên mã ký tự (Character Encoding) là quá trình mã hóa ký tự. Mỗi ký tự được định danh bằng một đoạn ký tự riêng biệt. Ví dụ: ký tự “A” có điểm mã Unicode là “U+0041”. Các Codepages sẽ gom các ký tự cần thiết cho một nhóm chữ viết hay ký hiệu. Đặt nhóm ký tự này vào cùng một hệ thống mã hóa ký tự. Ví dụ Latin 1 là nhóm chữ viết Latin Tây Âu, Latin 2 là nhóm chữ viết Latin Đông Âu.

Mô hình biên mã Unicode?

Mô hình biên mã Unicode là một Codepages được chọn làm tiêu chuẩn chung cho toàn thế giới. Nó còn có tên gọi khác là Tập Kí tự Toàn Cầu (Universal Character Set). Codespages này hỗ trợ tất cả các loại chữ viết và ngôn ngữ trên thế giới. Trang mã Unicode còn có tính tương thích ngược với trang mã ASCII, UTF-8 và UTF-16. Ngày nay, toàn thế giới đã thống nhất dùng chung trang mã Unicode để mã hóa ký tự. Vì ưu điểm tương thích với UTF-8, hoạt động tốt trên mọi nền tảng và hỗ trợ đa ngôn ngữ.

Nhóm ký tự Latin Việt Nam – Windows-1258:

Trang mã 1258 Windows Vietnamese là nhóm ký tự được Microsoft thực hiện. Nó được tạo ra cho việc trình bày chữ viết Latin của Việt Nam.
Trang mã 1258 không tương thích với bảng mã Unicode dựng sẵn. Do một số ký tự khác biệt và vài ký tự bị thiếu.
Windows-1258 không tương thích với tiêu chuẩn Việt Nam (TCVN 5712/VSCII) và không tương thích VISCII, VNI, VPS.
UTF-8 là trang mã ưa thích cho các ứng dụng trực tuyến gõ tiếng Việt hiện đại. Nhưng nó chỉ hỗ trợ một phần của trang mã Windows-1258.
Windows-1258 sử dụng sự kết hợp giữa ký tự cơ bản và dấu phụ để tạo ra Glyph ghép. Việc này làm phức tạp hóa quá trình xử lý cho phần mềm thiết bị.
Windows-1258 đã cũ, chỉ nên tham khảo trong quá trình thiết kế Font chữ tiếng Việt. Bảng mã ký tự Unicode chuẩn hóa vẫn là tiêu chuẩn chính cho thiết kế Font chữ hiện đại.

Nhóm ký tự Latin 1 – Tây Âu – Windows-1252:

Windows-1252 là trang mã chứa bộ ký tự Latin 1 của Tây Âu. Nó được sử dụng theo mặc định trong Microsoft Windows cho ngôn ngữ Anh, Tây Ban Nha, Bồ Đào Nha, Pháp, Đức (mặc dù thiếu chữ hoa ẞ). Ngoài ra, nó còn được sử dụng ở Châu Mỹ, Tây Âu, Châu Đại Dương và phần lớn Châu Phi.
Windows-1252 tương thích hoàn toàn với Unicode chuẩn hóa.
Windows-1252 là trang mã được sử dụng nhiều nhất thế giới cho đến ngày nay, tương tích tốt với HTML5.
Windows-1252 đã cũ, nên dần bị thay thế bởi UTF-8 khi sử dụng trên nền web.

Nhóm ký tự Mac OS Roman:

Mac OS Roman là trang mã hóa ký tự được tạo bởi Apple Computer, Inc. Mục đích chủ yếu để sử dụng cho hệ máy tính Macintosh.
Mac OS Roman được gọi với tên mã Macintosh Character Set. Nó hỗ trợ tiếng Anh và một số ngôn ngữ châu Âu khác.
Mac OS Roman mã hóa 256 ký tự, 128 ký tự đầu tiên giống hệt ASCII. Với các ký tự còn lại bao gồm ký hiệu toán học, dấu phụ và dấu chấm câu bổ sung.
(a) Ở phiên bản cũ, ký tự ở vị trí 0xDB là ký hiệu tiền tệ [ ¤ ]. Từ phiên bản Mac OS 8.5 đã sửa lại thành ký hiệu tiền tệ [ € ].
(b) Ký tự ở vị trí 0xF0 luôn được gán logo Apple. Apple sử dụng ký tự Unicode U + F8FF cho các thiết bị do Apple sản xuất. Ký tự logo có thể không được hỗ trợ trên thiết bị của các hãng khác.
UTF-8 là bảng mã tiêu chuẩn cho nền tảng web hiện nay. Tuy nhiên, Apple vẫn sử dụng Mac OS Roman cho các thiết bị do Apple sản xuất. Để Font chữ tương thích tốt với các thiết bị của Apple thì cần hỗ trợ nhóm ký tự Mac OS Roman.

Kết luận:

Trên đây là bài giới thiệu các trang mã ký tự – Codepages trong Font chữ. Trong bài viết này tôi chỉ tập trung giới thiệu các Codepages có liên quan đến chữ viết Việt Nam.
Hầu hết các Codepages cũ đều chỉ còn mang tính biểu tượng cho lịch sử mã hóa ký tự. Hiện nay, hầu hết các quốc gia trên thế giới đã thống nhất sử dụng chung bảng mã Unicode. Việt Nam cũng chọn bảng mã Unicode là tiêu chuẩn chính thức cho văn bản kỹ thuật số.
Nếu bạn muốn thiết kế Font chữ, làm Typography hoặc Việt hóa Font chữ. Bạn chỉ cần quan tâm hai Codepage tiêu chuẩn nhất là trang mã Unicode và UTF-8. Nếu bạn đang Việt hóa một Font chữ thuộc trang mã cũ, hãy cố gắng chuyển về mã Unicode. Các trang mã cũ đã lỗi thời, không còn tương thích với phần lớn Font chữ hiện đại ngày nay.

Các bài viết có liên quan:

Đường gạch chân dòng văn bản

Đường gạch chân dòng

Nhóm ký tự Mac OS Roman

Trang mã ký tự

Bảng mã Unicode 0020-007F Basic Latin

Khối mã ký tự

Bảng mã Font chữ thông dụng

Hướng dẫn sử dụng FontLab 8

Huy KTS - Thư viện thiết kế bỏ túi

Nya.vn – Thư viện thiết kế bỏ túi
Và tôi là HuyKTS, một người yêu thích công việc thiết kế.
Chúc các bạn sức khỏe và thành công!

Nya Store - Viên gạch dựng xây ý tưởng
Nya Home - Bộ sưu tập mẫu nhà đẹp
Nya Decor - Kiến tạo không gian cảm xúc
HuyKTS.com - Thư viện thiết kế bỏ túi

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Chuyển lên trên