我有一个专门在Android设备上查看的网站,我使用古吉拉特语言,但是我遇到了一个大问题,无法正确渲染古吉拉特字体。我至少希望找到一种解决方案来使默认情况下不支持任何Android版本的古吉拉特字体正常工作。于是我做了以下几步:
解决方案: - 手机Root - 找到适用于古吉拉特语的正确Unicode字体 - 将现有的System/fonts中的DroidSansFallback.ttf替换为古吉拉特字体(对于ICS,在system/etc文件夹中的fontsfallback.xml中进行了一些额外的更改)
这帮助我至少查看古吉拉特文本,但不能正确渲染。
问题: 1)半形式的问题,半形式字母没有按照应该组合的方式正确渲染出来。
如果您参考unicode.org上的常见问题解答,它清楚地定义了如何渲染。我还使用了[unicodeLookup][7]使用html代码为每个字母使用所提到的“零宽连接器”,但它没有效果。
无论如何,这个问题并不是主要问题,因为它不正确但也不是错误的。
解决方案: - 手机Root - 找到适用于古吉拉特语的正确Unicode字体 - 将现有的System/fonts中的DroidSansFallback.ttf替换为古吉拉特字体(对于ICS,在system/etc文件夹中的fontsfallback.xml中进行了一些额外的更改)
这帮助我至少查看古吉拉特文本,但不能正确渲染。
问题: 1)半形式的问题,半形式字母没有按照应该组合的方式正确渲染出来。
如果您参考unicode.org上的常见问题解答,它清楚地定义了如何渲染。我还使用了[unicodeLookup][7]使用html代码为每个字母使用所提到的“零宽连接器”,但它没有效果。
无论如何,这个问题并不是主要问题,因为它不正确但也不是错误的。
2)这个渲染问题导致文字打印错误。请看下面的两张图片,第一张在电脑上正确地渲染,第二张是从Android原生浏览器中截取的。
标记为1的问题是第一个问题,标记为2的问题是第二个问题。如果你在谷歌上搜索“Devanagari - Unicode Consortium ch09”,你会得到一份PDF文件,其中提到了这个问题(只需进入“Figure 9-8. Rendering Order in Devanagari”),清楚地解释了如何正确地渲染这些脚本。似乎无论Android使用什么来渲染这些脚本,都不支持这些语言。如果有任何可以更改Android操作系统以正确呈现字体的方法,请帮忙。
这绝对不是字体的问题,因为我已经尝试过Windows操作系统使用的Shruti字体,而是与渲染这些复杂脚本有关的问题。
可能的解决方案:(不需要的)
1)使用Opera Mini和位图字体(不是我的解决方案)
2)使用图像代替文本(同样不是我的解决方案,因为我的网站将有300行列表,而且还是针对移动设备的,不想增加页面大小)
请给我一个适当的解决方案,谢谢!