如何更改单词之间的距离?
How do I change the distance between words?
如何使用这些方法在 Android Studio 中更改字符串中单词之间的距离?我需要距离大约是标准大小的一半 space。
val spanMsg = SpannableStringBuilder()
msg?.forEachIndexed { i, char ->//replacing non-printable characters
//with their code and highlighting
if (char.isControlChar()) {//checking for non-printable characters
spanMsg.appendWithSpan(" ", RelativeSizeSpan(BLOCKS_INDENT))
for(x in toHex(Character.toString(char)
.toByteArray(StandardCharsets.UTF_16BE))!!) {
spanMsg.appendWithSpan(
x,
ForegroundColorSpan(Color.WHITE),
BackgroundColorSpan(Color.BLACK)
)
}
fun SpannableStringBuilder.appendWithSpan(text: CharSequence, vararg what: Any) {
this.append(text)
what.forEach {
this.setSpan(
it,
this.length - text.length,
this.length,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
)
}
据我了解,在BackgroundColorSpan(Color.BLACK)
之后可以加一个参数来改变字间距
有不同种类的空间,具有不同的宽度:
- →← - Tag Space
- → ← - Hair Space
- → ← - Thin Space
- → ← - Regular Space
- → ← - No-Break Space
- →‹← - Punctuation Space
- →〇← - Figure Space
- → ← - En Space
- → ← - Em Space
另请参阅:
如何使用这些方法在 Android Studio 中更改字符串中单词之间的距离?我需要距离大约是标准大小的一半 space。
val spanMsg = SpannableStringBuilder()
msg?.forEachIndexed { i, char ->//replacing non-printable characters
//with their code and highlighting
if (char.isControlChar()) {//checking for non-printable characters
spanMsg.appendWithSpan(" ", RelativeSizeSpan(BLOCKS_INDENT))
for(x in toHex(Character.toString(char)
.toByteArray(StandardCharsets.UTF_16BE))!!) {
spanMsg.appendWithSpan(
x,
ForegroundColorSpan(Color.WHITE),
BackgroundColorSpan(Color.BLACK)
)
}
fun SpannableStringBuilder.appendWithSpan(text: CharSequence, vararg what: Any) {
this.append(text)
what.forEach {
this.setSpan(
it,
this.length - text.length,
this.length,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
)
}
据我了解,在BackgroundColorSpan(Color.BLACK)
之后可以加一个参数来改变字间距
有不同种类的空间,具有不同的宽度:
- →← - Tag Space
- → ← - Hair Space
- → ← - Thin Space
- → ← - Regular Space
- → ← - No-Break Space
- →‹← - Punctuation Space
- →〇← - Figure Space
- → ← - En Space
- → ← - Em Space
另请参阅: