java 用于在android文本上进行字距调整的小辅助函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 用于在android文本上进行字距调整的小辅助函数相关的知识,希望对你有一定的参考价值。
/**
* Apply kerning to a string
*
* @param src the source string
* @param kerning the amount of kerning
* @return the spannable output
*/
public static Spannable applyKerning(CharSequence src, float kerning) {
if (src == null) return null;
final int srcLength = src.length();
if (srcLength < 2) return src instanceof Spannable
? (Spannable) src
: new SpannableString(src);
final String nonBreakingSpace = "\u00A0";
final SpannableStringBuilder builder = src instanceof SpannableStringBuilder
? (SpannableStringBuilder) src
: new SpannableStringBuilder(src);
for (int i = src.length() - 1; i >= 1; i--) {
builder.insert(i, nonBreakingSpace);
builder.setSpan(new ScaleXSpan(kerning), i, i + 1,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
return builder;
}
以上是关于java 用于在android文本上进行字距调整的小辅助函数的主要内容,如果未能解决你的问题,请参考以下文章
带有 itext 的 OpenType 字体字距调整
拉伸和字距调整类型,不适用于带有 @IBDesignable 的 Storyboard
构建用于调整字体中字符的字距和间距的软件[关闭]
使用 Swift 调整 UIBarButtonItem 的字距
是否可以在 SwiftUI 中为 TextField 添加字距调整?
ios:自定义字体的字距调整