Xem ra mạng yếu nên em chưa có thời gian tìm hiểu về bảng mã font, định dạng font rồi. Phần này anh st cho văn nó hay để em hiểu thêm
1. Bảng mã và font chữ
Bảng mã, Font và Unicode
Về mặt cơ bản, máy tính làm việc với con số. Bản thân mỗi chữ cái (mỗi ký tự) cũng được gắn cho một con số nào đó để máy tính có thể hiểu. Hệ thống các con số dùng để thể hiện tất cả các chữ cái và ký hiệu của một (hay nhiều) ngôn ngữ gọi là bảng mã.
Bảng mã chuẩn đầu tiên cho máy tính có tên là ASCII (American Standard Code for Information Interchange). ASCII chuẩn 7-bit cho phép hiển thị 128 ký tự (bao gồm chữ cái, số và các ký tự đặc biệt khác như “?”, “.”, “*” v.v.). Mỗi ký tự trong ASCII sử dụng một byte và khi tập hợp lại, ASCII cho phép hiển thị thêm 128 ký tự khác nữa (tổng cộng là 256 ký tự). Phần tập hợp này gọi là ASCII mở rộng (Extended ACSII) hay ASCII 8-bit.
Một tập hợp các chữ cái và ký hiệu thể hiện tất cả các ký tự trong một bảng mã với cùng một kiểu hiển thị được gọi là font. Nói cách khác, font là hình thức mà một bảng mã được thể hiện trên màn hình máy tính hoặc trên trang giấy khi in ra. Bất cứ điều gì thuộc về ký hiệu ngôn ngữ được thể hiện trên máy tính đều phải theo một font nào đó, thuộc một bảng mã nào đó.
Unicode là một bảng mã mới (có thể gọi là dạng mở rộng (rất rộng) của bảng mã ASCII), sử dụng 2 byte cho mỗi ký tự và có khả năng thể hiện 65.536 ký tự khác nhau, cho phép biểu đạt mọi ký tự của tất cả các ngôn ngữ trên thế giới. Nói cách khác, với Unicode, mỗi ký tự của tất cả các ngôn ngữ trên thế giới sẽ có một con số riêng cho mình trong bảng mã. Các font chữ theo chuẩn Unicode được gọi là font Unicode.
Font tiếng Việt kiểu cũ
Có thể dễ dàng thấy ngay điểm yếu của ASCII, đó là chỉ hỗ trợ tốt bảng chữ cái của tiếng Anh. Để thể hiện nhiều thứ tiếng khác, lập trình viên phải tạo ra các bảng mã khác dựa trên ASCII 8-bit. Một số bảng mã tiêu biểu kiểu này đối với tiếng Việt là TVCN3 (ABC 2.1), VNI, BK HCM...
Các bảng mã trên giải quyết được vấn đề thể hiện các ký tự đặc biệt trong tiếng Việt (dấu, dấu móc và dấu mũ), tuy nhiên có cùng một nhược điểm rất lớn là không tương thích lẫn nhau và với các font có sẵn của các hệ điều hành. Cụ thể, một văn bản được soạn thảo bằng font .Vntime (của bảng mã TVCN3) trên máy tính A sẽ không được thể hiện một cách chính xác trên máy tính B, nếu máy tính B không có font .Vntime (hoặc tương tự) được cài đặt. Nhiều trường hợp ngay cả khi font này đã được cài đặt, việc thể hiện font vẫn không chính xác (như lỗi chữ “ư” phổ biến). Sở dĩ có sự không tương thích lẫn nhau giữa các bảng mã tồn tại là vì những người sáng lập ra các bảng mã đó không có sự đồng nhất trong việc sắp đặt chữ cái nào sẽ được con số nào thể hiện trong từng bảng mã.
Sự không tương thích trên khiến việc trao đổi thông tin (đặc biệt là giữa các miền và giữa trong và ngoài nước) gặp rất nhiều khó khăn, nhất là đối với những người không có chuyên môn về máy tính.
Cách giải quyết duy nhất là tất cả cùng sử dụng chung một bảng mã. Và việc sử dụng Unicode - bảng mã chuẩn quốc tế - để thể hiện tiếng Việt có thể nói là hợp lý và “hợp thời” nhất.
2. Gõ tiếng Việt với Unicode
Với font tiếng Việt kiểu cũ, để gõ được tiếng Việt cần có hai điều kiện: Font chữ và bộ gõ dành cho font chữ đó. Với font Unicode, thì chỉ còn cần bộ gõ thôi. Tuy nhiên, không phải phiên bản nào của hệ điều hành Windows cũng có sẵn font Unicode.
Các hệ điều hành Windows 2000 và Windows XP hỗ trợ rất tốt Unicode (hầu hết các font có sẵn trong hệ thống đều theo chuẩn Unicode). Với các hệ điều hành còn lại (Windows 98/95/NT) thì người dùng có thể tải font Unicode về rồi cài vào máy. Tuy nhiên, nếu có thể thì tốt nhất là nên sử dụng Windows 2000 hoặc Windows XP.
3.Game máy tính
Các game máy tính thường dùng 3 dạng font
- Bitmap: Dạng này kích thước font thường là cố định pixel kiểu 8x16, hay 12x24...... với dạng này mỗi game có một kiểu định dạng font riêng, thường chẳng ai giống ai cả trừ các game cùng engine như em thấy với TQ7 và TQ online.
- Vector: Các ký tự như là tập hợp các nét vẽ (sử dụng các hàm GDI), do đó linh động và co giản hơn font bitmap, tuy nhiên được vẽ khá chậm và đường nét cũng không được mềm mại cho lắm.
- Font TrueType là dạng font được sử dụng phổ biến nhất hiện nay, được lưu trữ dưới dạng một tập các điểm ảnh, kết hợp một số thuật toán biến đổi. Font này dạng .ttf thường được ném vào hệ thống khi cài nên dễ xài, dễ dùng, dễ thay thế.
Nói thì đơn giản thế nhưng nhiều khi không chỉ có vậy. Em có thể xem thêm ở link này về cách xử lý font bitmap của Plants VS Zombies
http://heoluoi.the-up.com/t14-topic
Đây download game đó về vọc xem họ việt hoá ra sao ở đây
http://www.vn-zoom.com/f234/game-plant-vs-zombie-viet-hoa-2126505.html
Các game Tàu, Nhật thì hay dùng font theo bảng mã BIG5, GB2312 và JIS bao gồm thêm phần ANSI nữa nên đó là lý do em gõ tiếng việt không dấu OK nhưng có dấu thì thành Null.
Mấy thứ này còn dài, em nên xin theo học ASM để biết tường tận hơn
Vào đây để đọc các hướng dẫn VH game cho biết thêm
http://forum.minigame.vn/th-o-lu-n-t-v-n-k-thu-t-mgvh/1616-h-i-ap-cac-v-n-v-vi-t-hoa-game.html