PDA

View Full Version : [Q] Hoi ve trien khai chuong trinh .NET tieng Viet su dung font Unicode tren Win 98



QnA
09-04-2003, 19:01
Chào các bác
-------------------

Tôi thử viết chương trình .NET (VB.NET) giao diện tiếng Vietnam sử dụng font Unicode (dựng sẵn) trên HĐH Windows 2000.

Khi chạy chương trình trên các máy Windows 2000 thi hiển thị được giao diện tiếng việt. Nhưng khi chuyển sang chạy trên HĐH Windows 98 thì bị lỗi Font. Chương trình không hiện được giao diện tiếng việt.

Các bác nào biết cách khắc phục làm ơn chỉ giùm tôi với.

-Xin cám ơn-

xbacala
10-04-2003, 10:26
Cài font Unicode cho Windows 98 !

QnA
10-04-2003, 11:45
Cám ơn.
--------------

Nhưng tôi đã cài cả Vietkey 2003 rồi thử cũng không được.
Tôi cũng đã down một số font unicode của microsoft để thử cũng vậy.

Hay bác có biết chỗ lấy font unicode cho Win 98 thi hộ tôi với.

-Cám ơn-

consoilangthang
10-04-2003, 11:47
nếu là Win98SE thì có vài font hỗ trợ unicode (hình như) là Tahoma, Times New Romans và Arial. Nếu giới hạn chương trình sử dụng nội trong những font này thì sẽ không bị lỗi hiển thị font unicode.

QnA
10-04-2003, 12:43
Chương trình của tôi cũng chỉ sử dụng các font này (Tahoma, Times New Romans và Arial) nhưng lại bị lỗi.

Không biết có giải pháp nào không ?

-Cám ơn-

bpmtri
10-04-2003, 13:07
Trên Windows 9X bạn không sử dụng được Unicode đâu, tất cả những chữ Việt của bạn sẽ thành dấu ? hết phải không? Đây là hạn chế của Windows 9X, chỉ hỗ trợ Unicode ở mức cơ bản thôi. .NET khi chạy trên Windows 9X cũng không vượt qua được vấn đề Unicode này.

Khi chạy trên Windows 9X, .NET sẽ chuyển các chuỗi Unicode của bạn về dạng ASCII hết. Chữ nào không nằm trong phạm vi của bảng mã ASCII thì sẽ bị chuyển thành dấu ?

Để sử dụng Unicode trên Windows 9X cho các control, bạn phải can thiệp ở mức thấp, nghĩa là bạn phải tự vẽ lại cái control, và khi vẽ dùng hàm API TextOutW để vẽ chuỗi Unicode...

Còn việc xử lý chuỗi Unicode thì không khó khăn lắm vì các thư viện của .NET có hỗ trợ chuyển mã qua lại rồi.

Hiện tôi thấy nhóm TTVN đã giải quyết vấn đề sử dụng Unicode cho các control trên Windows 98 (trong phần mềm TIM). Bạn thử liên hệ với nhóm này thử xem. Vào trang Web này http://tim.ttvn.net nè.

QnA
10-04-2003, 14:04
Thế tức là khó có thể sử dụng được chương trình giao diện tiếng VN viết = .NET (công nghệ mới) trên Windows 98 rồi.

Tôi cứ tưởng .NET là mạnh lắm rồi, giải quyết được vấn đề font chữ việt nan giải trên mọi HĐH.

Chán quá trời.

-Cám ơn-

QuanN
10-04-2003, 14:30
Khoan chán đã! Hãy thử VietPad.NET (http://vietpad.sf.net) trên Win98 sẽ biết .NET hỗ trợ Win98/98SE/Me đến mức nào.

Font trong Win98 có thể chưa Unicode-compliant -- Win98SE/Me thì đã có. Nếu chưa, thì lấy ở Việt Unicode (http://sf.net/projects/vietunicode).

QnA
11-04-2003, 10:52
Vẫn xịt
---------

Tôi đã down font unicode mới của Microsoft về và thử rồi. Vẫn chẳng thấy thay đổi gi.

Thực sự ra khi cài Vietkey 2000/2003 trên Win 98 thi vẫn có thể soản thảo tiếng việt với font unicode trên NotePad. Tôi thử nhập tiếng việt trên các điều khiển của Win 98/ME như Text Box, ... thì cũng nhập đựợc.

Chỉ có chương trình .NET của tôi là vẫn bị lỗi.
+ Lỗi hiển thị tiếng Việt trên các Control.
+ Cả lỗi nhập tiếng việt trên các Control nữa.

Ai có giải pháp chi cho tôi với.

-Cám ơn-

consoilangthang
11-04-2003, 12:34
vô lý quá. Gửi tôi code được không ? consoilangthang@bonbon.net

QnA
11-04-2003, 14:04
Nếu máy bác đã cài Visual Studio .NET thì chi cần tạo 1 project HELLO với Tittle tiếng việt, add thêm mấy texbox, label, ...

Dịc, rồi copy file exe sang win 98 chạy thwr sẽ thấy ngay

-Cám ơn-

bpmtri
11-04-2003, 15:51
Các bạn hỏng tin thì thử làm như QnA nói xem. Chỉ có RichTextEdit là có thể gõ được Unicode trên Windows 98 thôi. Còn các control khác như button, label, title bar thì sẽ thấy dấu ? :P

consoilangthang
11-04-2003, 23:37
button hiện unicode ngon lành luông nha Trí :D. Có điều mấy thứ khác "đứt" sạch sẽ.

QnA
15-04-2003, 11:39
Xin chao
-----------

Khong co ai co giai phap nao hon ah.

Tra nhe, toi la la nguoi gap loi nay dau tien sao.

HELP ME.

dullard
15-04-2003, 18:52
thua rồi huh?

consoilangthang
16-04-2003, 09:08
dullard@, nói tớ hả ? xin lỗi chú nhé, thua là các control của .net thua thôi. Chứ giải pháp API/ownerdraw thì luôn có, vấn đề là không đáng bỏ công sức ra khi mà Win98 sắp trở thành quá khứ.

hạng người nhỏ mọn thù vặt thích rình rập lỗi lầm của người đã làm mình bẽ mặt như chú thiệt chẳng đáng làm tớ bận tâm đâu. Nếu muốn kiếm những mục tớ bó tay thì nhiều lắm. Nếu chú muốn thì tớ send cho cả lô địa chỉ để rồi chú sung sướng theo kiểu AQ nha ?

Shinichi Heroine
19-04-2003, 05:31
Không chỉ VS.NET mà một số ngôn ngữ khác (như Delphi) cũng không thể hiẻn thị tốt Unicode trên 9x

Tôi có một cách lập trình trình ( của 1 người bạn) hiển thị Okie trên 9x = Delphi. .NET thì mới mày mò sơ sơ thôi

Cái CT của TIM gì gì đó là sử dụng các VCL của ThemenEgine hoặc SkinEngine , 2 cái này support Unicode nên hiển thị bình thường là ... bình thương thôi

hueduongit
21-04-2003, 09:47
bpmtri nói đúng đó. Mình thử rồi, chương trình viết bằng net, thì các control có text, không hiện được các ký tự mã unicode trên Win 9.x