Re: request for help from CJK hackers


Subject: Re: request for help from CJK hackers
From: ha shao (hashao@china.com)
Date: Thu Nov 09 2000 - 02:08:55 CST


On Thu, Nov 09, 2000 at 10:12:12AM +0400, hvv@hippo.ru wrote:
> On Thu, 9 Nov 2000, Belcon Zhao wrote:
> > Yeah.I got it.Here is the reason why m_mbtowc always return 1,Vlad.
> > After I set debug message and found that here param is just 936 for
> > GB2312.Here we read "\ansicpg936"(for GB2312) from rtf file,and we
> > seperate 936 from the string and set param=936.But we don't expect
> > this result,IMHO.Vlad,I guess you want to get param=0x804(for GB2312)
> > or 0x404(for Big5),then ***XAP_EncodingManager::instance->
> > charsetFromCodepage((UT_uint32)param))*** return GB2312 or Big5.But if
> > param=936,it will ***always*** return CP1252.So,our character is
> > set in a wrong way.

Here is a small patch that solved some of my problems. according to:
http://msdn.microsoft.com/library/specs/rtfspec_6.htm#rtfspec_11

Index: xap_EncodingManager.cpp
===================================================================
RCS file: /cvsroot/abi/src/af/xap/xp/xap_EncodingManager.cpp,v
retrieving revision 1.12
diff -u -r1.12 xap_EncodingManager.cpp
--- xap_EncodingManager.cpp 2000/11/06 02:27:52 1.12
+++ xap_EncodingManager.cpp 2000/11/09 08:07:47
@@ -453,8 +453,8 @@
 {
 /*key, value*/
     {NULL,NULL},
- {"CP936","BIG5"}, /* most probably it's correct - VH*/
- {"CP950","GB2312"}, /* 100% correct */
+ {"CP950","BIG5"}, /* most probably it's correct - VH*/
+ {"CP936","GB2312"}, /* 100% correct */
     {NULL,NULL}
 };



This archive was generated by hypermail 2b25 : Thu Nov 09 2000 - 02:09:04 CST