[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re[2]: 关于 abiword 0.7.10-6 不能显示简体字µ奈侍â



Hello VINCENT,

On Thursday, October 26, 2000, VINCENT . KUO 郭文山 wrote:

VK? 既然各字型可能有不同的编码方式,我们是不是应该在字型驱动程式中把这些编码转换成
VK? Unicode,然后所有的应用程式都可以用单一编码来操作呢?

VK? 当然我们不能期望所有的应用程式都支援Unicode,但我的想法是把应用程式的编码和字型
VK? 的编码独立,由系统负责转换。就算应用程式只懂得Big-5,还是可以运用GB或Unicode编
VK? 码的字型。这其实不是新鲜事,因为OS/2和Windows早就这样做了。

看不懂,什么是应用程式只懂的 Big-5 ? 目前文鼎的仿真字应该都是
Unicode 编码的。不是什么问题


VK? -----Original Message-----

VK? From: 简荣增 [mailto:kemmy@idpoints.com]
VK? Isaac Kar-Keung To 写道:
>> >>>>> "kemmy" == kemmy  <kemmy@idpoints.com> writes:
>>     kemmy> 总结来说,问题在于 abiword 不管你选用什么字型,它一律用 big5 的编码
>>     kemmy> 显示, 而事实上应该以环境的设定如 LC_ALL 做为显示的编码才是.

>> 好象有点问题... 文字编缉程式一向很著重多国性. 在支援一种语文的时候, 不可使其
>> 他的语文不能用. 如果语文是以 LC_ALL 完全控制的话, LC_ALL=zh_TW.Big5 时使用者

>> 便不能用日文了. 当然 abiword 把输入的 GB 当成 Big5 是不对, 但我还是看不到为
>> 甚么 abiword 应该以 LC_ALL 的设定显示字形. 各字形有他们自己的编码, 如果有
>> input method server 支援该编码, 便应该直接用该编码, 否则便应该把输入的编码转
>> 换到该字形的编码去. 对吗?
VK? 您说得也对,如果使用者用的输入法可以输入各种编码的文字的话,
VK? abiword 应该也要能显示他选用的字型;
VK? 我先前会说是如 LC_ALL 这个设定乃是因为目前 XIM 只支援单一编码输入 (如果有错
VK? 请指正),

VK? 不能同时使用不同的编码(例如在执行中切换繁体和简体输入), 所以使用者在启动Abiword
VK? 时只有预设使用某一个编码而已,故用  LC_ALL 进得判断.

给我的感觉,应该是原程序直接使用了Xlib的16bit字节的画字函数,而没有使用
X的i18n 画字函数(多字节或宽字节)。其结果是,Big5码的编码和字型编码都
是 EUC (简化的说法),而GB码用的编码是 EUC 字型用的是 iso-2202 编码,
要画GB字的时候需要进行转化,这个本来已经在X提供的 I18N 函数里内部处理
了。但是如果直接用16bit字节的画字函数,在画GB(euc-jp
也一样)的字的时候,没有经过转 iso-2202 的步骤,则什么也画不出来。

最好是直接使用X的 i18n 函数处理,但象文字处理这样的程式可能不想
完全交给X做,没有看源码,不能肯定。以后(一两个月后?)最好能够转移到
使用pango拉处理这些东东。


-- 
Best regards,
 hashao                            mailto:hashao@china.com.n.s.pam




Reply to: