自定义字体、多行TextView上的省略号、字形和故障。

5
我需要在我的应用程序中使用自定义字体。
问题:对于包含具有设置为true的ellipsize属性的多行TextView的ListView,我可以看到省略号后面出现一些难以辨认的字符。 显然,Android会使用一些未知于我的自定义字体的字符(零宽度不间断空格)填充TextView中的字符串。
单行TextView似乎运行良好。
最佳方法是隐藏这些字符或删除填充吗? 另外,是否有Helvetica字体的变体可供免费使用,其中包含零宽度不间断空格字符?
谢谢。

作为以后的参考,那个字符是U+FEFF,字节顺序标记,Android不应该像他们现在这样使用它。它已经被弃用作为空白字符。糟糕的谷歌!糟糕! - Micah Hainline
1个回答

3
什么是隐藏这些字符或删除填充的最佳方法?
我不知道有什么办法可以做到这一点。
此外,是否有任何可自由使用的Helvetica字体变体,其中包含零宽度无间隔空格字符?
考虑到Helvetica与内置的Droid Sans非常相似,我不确定为什么要在应用程序中嵌入Helvetica。而且,根据定义,没有“免费提供”的Helvetica字体,因为该字体不免费。
话虽如此,如果给定的字体缺少零宽度无间隔空格符号,请让某人打开您的字体文件并添加该符号。我们在我的一个咨询项目上做到了这一点,并取得了良好的效果。我认为,平面设计师可能知道如何做到这一点。

你真的必须成为一名平面艺术家才能做到这点吗?一个好的字体编辑器不能掩盖我的天真吗? :) 我目前正在使用Droid Sans字体。感谢您的回复! - Samuh
如果您的字体编辑器允许从一个字体复制字符到另一个字体,那么您可能可以简单地从Droid Sans复制“ZERO WIDTH NO BREAK SPACE”到您想要的字体中。不过,我并未尝试过这样做。 - CommonsWare
4
我刚刚修复了几个TrueType字体,使用FontForge从DroidSans复制了字形。这是一个简单的“在Droid Sans中查找字形/复制/在其他字体中查找字形/粘贴”的过程,所以即使你不是图形艺术家,也完全可以做到 :-) - Pēteris Caune

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接