TiÕng viÖt & PhÇn mÒm vi tÝnh

Néi dung | TiÕng ViÖt

TiÕng ViÖt vµ bé m· Unicode

§Æng Minh TuÊn (dangtuan@bigfoot.com) 89B Lý Nam §Õ, Hµ néi, 8433872
(B¸o TH&§S)

1 Tæng quan vÒ bé m· Unicode

TiÕng ViÖt cã tÊt c¶ 134 ký tù ®Æc thï ViÖt, do ®ã 128 gi¸ trÞ cña phÇn më réng kh«ng ®ñ ®Ó m· tÊt c¶ c¸c con ch÷ ViÖt. V× vËy ®· xuÊt hiÖn nhiÒu gi¶i ph¸p kh¸c nhau nh»m m· hãa tiÕng ViÖt trong khu«n khæ b¶ng m· 8-Bit. Cã thÓ chØ sö dông ch÷ th­êng trong b¶n m·, tøc lµ chØ cÇn 67 gi¸ trÞ, cßn ch÷ hoa ®­îc thÓ hiÖn b»ng c¸ch dïng Font ch÷ hoa. gi¶i ph¸p nµy ®­îc dïng trong TCVN 5712-1993 (VN3) mµ Font ch÷ ABC lµ 1 vÝ dô. Gi¶i ph¸p tæ hîp lµ dïng 2 ký tù: ký tù nguyªn ©m vµ ký tù dÊu ghÐp lång vµo nhau. VÝ dô ch÷ ‘¸’ ®­îc t¹o thµnh bëi ký tù ‘a’ vµ ký tù dÊu s¾c (‘) mµ font ch÷ VNI lµ vÝ dô tiªu biÓu. C¶ 2 gi¶i ph¸p nµy vÒ tiÕng ViÖt ®Òu cã nh÷ng ­u ®iÓm vµ nh­îc ®iÓm kh¸c nhau, (xem thªm phÇn ph©n tÝch c¸c ­u nh­îc ®iÓm nµy trong Vietkey Help).

B¶ng m· 8-bit víi 256 gi¸ trÞ kh«ng thÓ ®ñ chç ®Ó m· c¸c ký tù cña c¸c ng«n ng÷ dïng ch÷ t­îng h×nh nh­ tiÕng H¸n, TiÕng NhËt, Hµn quèc... Tõ tr­íc ®Õn nay ®· cã nhiÒu gi¶i ph¸p kh¸c nhau ®Ó m· ho¸ c¸c ký tù cña c¸c ng«n ng÷ nµy trªn m¸y vi tÝnh, tuy nhiªn nh÷ng gi¶i ph¸p nµy th­êng dïng kü thuËt tæ hîp hoÆc c¸c chuçi ký tù ®iÒu khiÓn (Esc) kh¸ phøc t¹p vµ quan träng h¬n c¶ lµ c¸c gi¶i ph¸p nµy kh«ng t­¬ng thÝch víi nhau. Do ®ã viÖc sö dông ®ång thêi c¸c ng«n ng÷ trong cïng 1 v¨n b¶n vµ trong cïng 1 font ch÷ th­êng kh«ng thÓ hoÆc rÊt khã kh¨n khi thùc hiÖn.
Unicode ra ®êi lµ nh»m kh¾c phôc c¸c nh­îc ®iÓm nãi trªn vµ nh»m x©y dùng mét bé m· chuÈn v¹n n¨ng dïng chung cho tÊt c¶ mäi ng«n ng÷ trªn thÕ giíi.

Unicode c«ngxoocxiom ®­îc thµnh lËp vµo n¨m 1991 nh­ 1 tæ chøc phi lîi nhuËn nh»m ph¸t triÓn chuÈn Unicode, c¸c thµnh viªn cña Unicode c«ng xoãc xi«ng bao gåm c¸c c«ng ty hµng ®Çu cña thÕ giíi trong lÜnh vùc phÇn mÒm nh­ Adobe, Aldus, Borland, Digital, GO, IBM, HP, Lotus, Metaphor, Microsoft, NeXT, Novell, Sun, Symantec, Taligent, Unisys, and WordPerfect ...

Unicode lµ bé m· ký tù 16-Bit, t­¬ng thÝch hoµn toµn víi chuÈn quèc tÕ ISO/IEC 10646-1; 1993. Víi 65.536 ký tù Unicode hÇu nh­ cã thÓ m· ho¸ tÊt c¶ c¸c ng«n ng÷ trªn thÕ giíi. Ngoµi ra víi c¬ chÕ më réng UTF-16 Unicode vµ chuÈn ISO 10646 cßn cho phÐp m· ho¸ h¬n 1 triÖu ký tù mµ kh«ng cÇn ph¶i dïng ®Õn m· ®iÒu khiÓn Escape.

Phiªn b¶n míi nhÊt hiÖn nay lµ Unicode 2.0 (B¶n 3.0 ®ang chuÈn bÞ ph¸t hµnh) bao gåm c¸c ng«n ng÷ thuéc hä la-tinh, vµ Greek, Cyrillic, Armenian, Hebrew, Arabic, Devanagari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, Malayalam, Thai, Lao, Georgian, Tibetan, Japanese Kana, the complete set of modern Korean Hangul, and a unified set of Chinese/Japanese/Korean (CJK).

ChuÈn Unicode m« t¶ c¸c ký tù ng«n ng÷, c¸c dÊu chÊm c©u, dÊu phô, ký hiÖu to¸n häc, c¸c dÊu mòi tªn vµ c¸c ký hiÖu Dingbats. HiÖn nay Unicode ®· ®Þnh nghÜa kho¶ng 39 000 ký tù. Cßn kho¶ng 18.000 ký tù sÏ ®­îc ®Þnh nghÜa nay mai, 917 504 ký tù cã thÓ ®­îc ®Þnh nghÜa nÕu dïng c¬ chÕ më réng UTF-16. 6.400 chç ®­îc dµnh ra cho c¸c h·ng sö dông víi c¸c môc ®Ých riªng cña m×nh. UTF-16 còng dµnh ra 131.072 ký tù ®Ó dµnh cho nh÷ng môc ®Ých dïng riªng.

C¸c chuÈn m· ho¸ ký tù kh«ng chØ ®Þnh nghÜa c¸c m· cña c¸c ký tù, gi¸ trÞ sè, vµ vÞ trÝ cña c¸c ký tù mµ cßn ®Þnh nghÜa c¶ c¸ch biÓu diÔn c¸c m· ký tù d­íi d¹ng bit. Unicode vµ ISO-10646 quy ®Þnh 2 c¬ chÕ, khu«n d¹ng chuyÓn ®æi lµ UTF-8 vµ UTF-16.

Mét sè ®Æc ®iÓm cña Unicode:

- Mçi ký tù trong b¶ng m· Unicode ®Òu cã ®é dµi cè ®Þnh lµ 16 Bit, nhê ®ã ViÖc xö lý c¸c x©u ký tù Unicode rÊt ®¬n gi¶n kh«ng phøc t¹p nh­ c¸c gi¶i ph¸p dïng chuçi ký tù ®iÒu khiÓn, ph¶i cã nh÷ng thuËt to¸n t­¬ng ®èi phøc t¹p ®Ó nhËn diÖn ký tù trong 1 chuçi c¸c Byte. Trong khi ®ã víi Unicode mçi ký tù cã ®é dµi ®óng 2 Byte nªn cã thÓ ®Þnh vÞ rÊt dÔ dµng c¸c vÞ trÝ cña ký tù trong chuçi Byte cho tr­íc.

- Unicode tr¸nh ®Õn møc tèi ®a viÖc ®Þnh nghÜa d­ thõa, trïng lÆp. VÝ dô ký tù ‘Ð’ chØ cã 1 m· duy nhÊt dïng chung cho c¶ ng«n ng÷ tiÕng ViÖt, tiÕng Czech, ....còng chÝnh v× thÕ nªn hÖ thèng ch÷ ViÖt cã c¸c m· n»m r¶i r¸c ë nhiÒu vÝ trÝ kh«ng liÒn nhau. TiÕng H¸n, NhËt vµ Hµn cã kho¶ng 10 ngh×n ký tù trïng nhau nªn chóng ®­îc dïng chung cho c¶ 3, tuy nhiªn trong Unicode vÉn cã c¸c vïng riªng ®Ó ®Þnh nghÜa nh÷ng ký tù ®Æc thï cña 3 ng«n ng÷ nµy.

- Unicode vÒ c¬ b¶n kh«ng quy ®Þnh viÖc bè trÝ c¸c ký tù theo quy ®Þnh s¾p xÕp cña c¸c ng«n ng÷, ®iÒu nµy còng lµ hÖ qu¶ cña viÖc tr¸nh ®Þnh nghÜa c¸c ký tù d­ thõa do ph¶i tËn dïng c¸c ký tù dïng chung nªn kh«ng thÓ bè trÝ c¸c ký tù theo tõng vïng riªng cho tõng ng«n ng÷. H¬n n÷a thùc tÕ víi nhiÒu ng«n ng÷ ng­êi ta ph¶i dïng nh÷ng thuËt to¸n riªng ®Ó s¾p xÕp chø kh«ng thÓ s¾p xÕp theo thø tù cña chóng trong b¶ng ch÷ c¸i (tiÕng ViÖt lµ 1 ®iÓn h×nh). ChÝnh v× vËy b¶ng m· tiÕng ViÖt trong Unicode cã c¸c ký tù ViÖt n»m r¶i r¸c ë nhiÒu n¬i vµ kh«ng theo 1 tr×nh tù s¾p xÕp nµo.

Unicode ®· ®­îc cµi ®Æt trong c¸c hÖ ®iÒu hµnh Windows NT, Windows 9.x, MacIntosh (MacOS 8), BE OS, Linux...

Windows NT sö dông Unicode nh­ lµ nÒn t¶ng trong hÖ ®iÒu hµnh, c¸c x©u ký tù ®­îc xö lý nh­ lµ x©u Unicode, Resource, tªn File trong NTFS còng lµ Unicode. Tuy nhiªn ®Ó t¨ng tÝnh t­¬ng thÝch Windows NT vÉn cã c¸c hµm API ®Ó xö lý ký tù m· 8-Bit. Windows NT 5.0 hç trî h¬n 100 ng«n ng÷ kh¸c nhau trong ®ã cã c¶ tiÕng ViÖt.

Ng­îc l¹i Windows 9.x kh«ng lÊy Unicode lµm nÒn t¶ng néi t¹i trong hÖ ®iÒu hµnh, tuy nhiªn Win9.x l¹i cã 1 sè hµm hç trî cho viÖc xö lý vµ hiÓn thÞ m· Unicode.

Muèn sö dông ®­îc Unicode cÇn ph¶i cã nh÷ng phÇn mÒm hç trî hiÓn thÞ hoÆc cho phÐp gâ ký tù theo chuÈn Unicode, ngoµi ra còng cÇn ph¶i cã Font ch÷ Unicode ®­îc cµi ®Æt trong hÖ thèng.

HiÖn nay trong m«i tr­êng Windows, bé MS Office 2000 (Word, Excel, Powerpoint...) hç trî rÊt tèt bé m· Unicode. Trong m«i tr­êng M¹ng Internet Expolore 5.0 còng cho phÐp hiÓn thÞ c¸c trang Web ®­îc thiÕt kÕ theo chuÈn Unicode.

2. TiÕng ViÖt trong bé m· Unicode

TiÕng ViÖt ®­îc xÕp vµo hä La-tinh më réng 1 (Latinh Extended 1), tuy r»ng c¸c ký tù ViÖt ph©n bè kh«ng tËp trung, nh­ng cã 1 thuËn lîi rÊt lín lµ do tiÕng ViÖt ®­îc xÕp vµo hä La-tinh nªn ®©y lµ thµnh phÇn c¬ b¶n cña hÇu hÕt tÊt c¶ c¸c font ch÷ Unicode, cã nghÜa lµ tiÕng ViÖt cã mÆt ë mäi n¬i trong bÊt kú cña ng«n ng÷ nµo, vµ nh­ thÕ cã thÓ ®äc ®­îc tiÕng ViÖt ë mäi n¬i cã cµi ®Æt font Unicode. Trong khi ®ã c¸c ng«n ng÷ kh«ng thuéc hä la-tinh nh­ China, Japan, Lao, Thai...th× kh«ng ph¶i lóc nµo còng cã s½n trong c¸c font Unicode.

TiÕng ViÖt trong Unicode cã thÓ cã 2 d¹ng: ký tù dùng s½n vµ ký tù tæ hîp. Unicode cã ®ñ 134 ký tù cho tÊt c¶ ch÷ hoa vµ ch÷ th­êng trong b¶ng ch÷ c¸i tiÕng ViÖt, ®ång thêi cã m· cho 5 dÊu thanh (HuyÒn, s¾c, hái, ng·, nÆng) ®Ó t¹o ra c¸c ký tù ViÖt d¹ng tæ hîp, ngoµi ra Unicode cßn cã dÊu riªng ®Ó biÓu diÔn ®¬n vÞ tiÒn ®ång ViÖt nam.
VÝ dô:

Ch÷ c ¶ n g sÏ ®­îc biÓu diÔn d­íi d¹ng Unicode nh­ sau (Chuçi sè Hex):

0063 1EA3 006E 0067 (m· dùng s½n)
0063 0041 0309 006E 0067 (m· tæ hîp)

Bµn phÝm cho phÐp gâ tiÕng ViÖt trªn Windows 2000 sÏ sinh ký tù theo kiÓu dùng s½n, trong khi phÇn mç trî tiÕng ViÖt Unicode trong Windows 9.x l¹i sinh ký tù theo m· ræ hîp ( c¸c ch÷ tæ hîp nµy th­êng cã ®é mü thuËt kh«ng cao do dÊu thanh bá cè ®Þnh vµ dïng chung nªn ch÷ vµ dÊu ®Æt kh«ng hîp lý ®èi víi c¸c ch÷ th­êng).

3. Cµi ®Æt tiÕng ViÖt Unicode

3.1 HiÓn thÞ tiÕng ViÖt Unicode:

§Ó hiÓn thÞ tiÕng ViÖt Unicode cÇn ph¶i cµi ®Æt font ch÷ Unicode, chØ cÇn cµi 1 trong c¸c phÇn mÒm sau: Internet Explore 5 hoÆc MS Office 2000 trong Windows 95/98 hoÆc cµi ®Æt Windows 2000. Khi cµi ®Æt 1 trong nh÷ng phÇn mÒm trªn c¸c font Unicode cã tiÕng ViÖt sÏ ®­îc tù ®éng cµi ®Æt hÖ thèng. C¸c font c¬ b¶n cña Microsoft ®i kÌm víi c¸c phÇn mÒm trªn ®· hç trî tiÕng ViÖt Unicode lµ Times New Roman, Arial, Courier, Tahoma, Ngoµi ra cã thÓ t¶i xuèng c¸c font Unicode (cã hç trî tiÕng ViÖt) kh¸c trªn Internet: Verdana, Arial Narrow, Arial Black, Bookman Old Style, Garamond, Impact, Lucida Sans. Comic Sans...

3.2 Gâ tiÕng ViÖt Unicode

o Víi Windows 2000 (B¶n English) chØ cÇn cµi ®Æt thªm ng«n ng÷ tiÕng ViÖt bµn phÝm tiÕng ViÖt theo chuÈn TCVN sÏ ®­îc cµi ®Æt vµ cho phÐp b¹n gâ tiÕng ViÖt (Mét kiÓu gâ gÇn gièng víi kiÓu gâ VNI).

o Windows 95, 98 (B¶n English): t¶i xuèng Vietnamese Support trong Website cña Microsoft, cµi ®Æt Vi.inf ®Ó cã ®­îc bé gâ tiÕng ViÖt Unicode theo tiªu chuÈn bµn phÝm TCVN. Trong c¶ 2 m«i tr­êng Windows NT vµ Windows 9.x Microsoft cã hç trî c¶ Local cho tiÕng ViÖt do ®ã c¸c tÝnh n¨ng t×m kiÕm, s¾p xÕp tiÕng ViÖt còng ®­îc hç trî, ngoµi ra Local tiÕng ViÖt còng hç trî c¶ c¸ch ®¸nh ch÷ sè hay c¸ch ®Æt ngµy th¸ng theo quy ®Þnh cña ViÖt nam.

o Bµn phÝm tiÕng ViÖt do Microsoft hç trî chØ cã 1 kiÓu duy nhÊt lµ TCVN, sÏ g©y khã kh¨n cho nh÷ng ng­êi quen víi kiÓu gâ Telex hoÆc VNI. §Ó cã kiÓu gâ quen thuéc trong c¶ 2 m«i tr­êng Windows NT, Windows 9.x b¹n cã thÓ dïng bé gâ VIETKEY (chän code lµ VN Win 95).¦u ®iÓm cña bé gâ Vietkey trong m«i tr­êng Unicode: hç trî kiÓu gâ Telex vµ VNI, cã thªm nhiÒu tÝnh n¨ng n©ng cao víi font Unicode nh­ kiÓm tra lçi chÝnh t¶, tù ®éng chuyÓn ®æi Anh-ViÖt, gâ t¾t trong tÊt c¶ c¸c øng dông, 1 phÇn mÒm duy nhÊt ch¹y ®­îc trªn c¶ 2 m«i tr­êng WinNT vµ Win95. Ch­¬ng tr×nh nhá gän (chØ cÇn 90K), kh«ng bÞ conflict víi c¸c phÇn mÒm phæ th«ng L¹c ViÖt MTD, English Stady...®ång thêi Vietkey vÉn cho phÐp gâ tiÕng ViÖt víi c¸c font truyÒn thèng ABC, VNI, Vietware...

TiÕng ViÖt trong Unicode: tæng céng 140 m· ®­îc ®Þnh nghÜa cho tiÕng ViÖt: 134 ký tù ch÷ viÖt, 5 dÊu thanh vµ dÊu VN§. Trong ®ã cã 31 ký tù thuéc b¶ng m· 8-bit ASCII më réng.

4. KÕt luËn

MÆc dï bé m· chuÈn quèc gia TCVN 5712-1999 sÏ ®­îc c«ng bè trong 1 thêi gian gÇn ®©y, nh­ng víi b¶n chÊt vÉn lµ bé m· 8-Bit vµ trªn nÒn bé m· TCVN 5712-1993, bé m· nµy vÉn sÏ gÆp ph¶i nh÷ng tranh chÊp víi nhiÒu øng dông phæ th«ng th«ng nh­ MS Office, ®Æc biÖt lµ víi Internet Explore 5 vµ MS Publishing 2000, ch÷ ‘­’ sÏ kh«ng hiÓn thÞ ®­îc trªn c¸c trang Web hoÆc sÏ bÞ ng¾t dßng sai, bé m· Unicode sÏ gi¶i quyÕt ®­îc nh÷ng tranh chÊp nãi trªn vµ cho phÐp tiÕng ViÖt hoµ ®ång víi c¸c ng«n ng÷ kh¸c trªn thÕ giíi.

Trong xu thÕ hoµ nhËp víi thÕ giíi hiÖn nay, bé m· Unicode vµ 1 sè phÇn mÒm, c«ng cô hç trî hiÓn thÞ vµ gâ tiÕng ViÖt Unicode trong c¸c m«i tr­êng phæ th«ng nh­ Windows NT vµ Windows 9.x céng víi IE5, Office 2000, Vietkey...Unicode sÏ më ra 1 cuéc c¸ch m¹ng míi trong lÜnh vùc tiÕng ViÖt vµ trong t­¬ng lai kh«ng xa Unicode sÏ lµ bé m· ®­îc dïng rÊt phæ biÕn trong thÞ th­êng tin häc cña ViÖt nam.

Ghi chó: Liªn l¹c víi t¸c gi¶ ®Ó cã Vietkey hç trî Unicode ch­¬ng tr×nh söa lçi ch÷ ‘­’ cho Internet Explore 5, Outlook 5 vµ b¶ng m· ®Çy ®ñ cña tiÕng ViÖt Unicode.

Ch­¬ng tr×nh Vietnamese Support: B»ng c¸ch cµi ®Æt Vietnamese support vµ dïng Vietkey c¸c b¹n cã thÓ gâ tiÕng ViÖt Unicode trong Office 2000 trªn Win9x. 
Ghi chó:
1- §Ó gâ tiÕng ViÖt Unicode trong Win9x b¹n cÇn ph¶i cµi Office 2000
2- NÕu dïng Windows 2000 th× kh«ng cÇn ph¶i cµi Vietnamese support.
3- Trªn thanh taskbar phÇn hiÓn thÞ tiÕng ViÖt thay vi` ch÷ ViÖt Nam cã thÓ chØ lµ 2 dÊ'u ?? , ®©y lµ lçi cña Win9x tuy nhiªn nã kh«ng lµm ¶nh h­ëng ®Õn viÖc gâ tiÕng ViÖt.

Néi dung | TiÕng ViÖt

Toµn bé WebSite nµy sö dông font .VnTime, .VnArial & VNI-Times tr×nh duyÖt sÏ tù ®éng hiÓn thÞ chÝnh x¸c font ch÷ tiÕng ViÖt miÔn lµ Windows cña b¹n cã font nµy.

Neu chua co font xin hay xem trang CAI DAT FONT TIENG VIET de download cac font su dung cho Website nay.

KiÕn thøc
* 3 gi¶i ph¸p tiÕng ViÖt cho Windows

* Cµi ®Æt font tiÕng ViÖt ë møc hÖ thèng cho Windows

* Sö dông font True Type trong Windows

* Gi¶i ph¸p m· chuçi tù 7 bit cho tiÕng ViÖt

* TiÕng ViÖt & bé m· Unicode

* Xö lý & trao ®æi th«ng tin tiÕng ViÖt

*

TiÖn Ých
* X¸c lËp Account tù ®éng cho Windows 9.x

* VNI T©n Kú 4 for Windows

* Vietware 2.0

* VietKey 4.x

* Just click 'n' see
Trang 1 ; 2

* mtdEVA300
Trang 1 ; 2 ; 3 ; 4

*