Chinaunix首页 | 论坛 | 博客
  • 博客访问: 243733
  • 博文数量: 32
  • 博客积分: 2033
  • 博客等级: 大尉
  • 技术积分: 354
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-10 01:53
文章分类
文章存档

2011年(2)

2010年(16)

2009年(13)

2008年(1)

我的朋友

分类: LINUX

2010-06-10 14:00:26

android还没有为i18n做好准备。

简单的如下一个问题

1:文本渲染就还没有准备好。
比如简单的bidi支持的有问题,目前只支持hebrew的bidi,
简单的arabic的bidi支持的都有问题。
文本渲染是比较复杂的实际上,可以参考这个网页
这个网页最后更新在2010还算比较新了。



要看arabic的网页?

注意阿拉伯文是从右往左的,但是中间如果夹着英文或者数字
还是按照从左往右的,遇到特殊字符相连的时候字型会变化,
特定的组合的时候两个字符会合并成一个字符。

字体的layout engine, shape engine

http://developers.sun.com/dev/gadc/technicalpublications/presentations/iuc14.pdf



关于bidi
fribidi,icu,

pango,m17n,icu等等。

freetype目前是不管layout的。

android无法使用fontconfig来选字。

kernel和linux共用,kernel部分是支持国际化的。
但是gui部分就不行了,
还有就是使用习惯的问题。
简单的比如文本选择,RTL的字体的输入。插入。
layout的计算也不灵活。

android的图形系统一直大改之中。

原型是高通的msm芯片。


字体本身有多种,bitmap和ttf,ttf的实现又有多种。所以有freetype,各种语言的复杂性,简单的说比如arabic的 字符合并
横排竖排的字体,RTL的排版等,各种字符编码的支持。kernel
已经支持,主要是上面。

字体显示因为有freetype,所以有字体就可以了


简单而言,就是文本处理方面缺乏CTL(complex text layout)
支持,所以arabic,Tibet,tamil,等等,都无法支持。

不过这个也受限于android目前的layout机制,要彻底解决。
改动不小,目前的staticlayout和dynamic layout的机制还有
就是文本选择,文本定位方面都需要修改。
阅读(1646) | 评论(0) | 转发(0) |
0

上一篇:android?linux?

下一篇:android简易双屏支持

给主人留下些什么吧!~~