如何为特殊音乐符号左右修剪额外空间?

时间:2013-09-03 15:07:46

标签: android typeface

我想用特殊的音乐符号绘制文字。例如,调整名称,如EADGBE,E#A#D#G#B#E#(锐利和平面应该是Unicode符号u266F和u266D。问题是特殊符号左右两侧非常大的空间。

我还发现这不仅是尖锐和平坦的问题,也是其他音乐符号的问题。

有代码和结果:

    StringBuilder sb = new StringBuilder("ABCDEFG\n");
    sb.append("\u266F\u266F\u266F\n");
    sb.append("\u266D\u266D\u266D\n");
    for (int j = 10; j < 16; j++) {
        int charIndex = (2 * 16 * 16 * 16) + (6 * 16 * 16) + 6 * 16 + j;
        Character ch = Character.valueOf((char) charIndex);
        sb.append(ch);
    }

Symbols

我尝试使用其他字体(例如,我已经下载了Helvetica和Helvetica Neue字体,将它们放入资源并将它们设置在TextView上)但没有任何变化:符号左右有很大的空间

有办法解决吗?

1 个答案:

答案 0 :(得分:0)

我认为它们不是空格...我运行你的代码并在logcat上打印每个字符。我发现:在你的图像上只出现4个符号,但logcat显示6,也许字体不支持那种符号。

09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9834 = ♪
09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9835 = ♫
09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9836 = ♬
09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9837 = ♭
09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9838 = ♮
09-03 09:14:42.092: D/asd-asdasd(7486): Test character: 9839 = ♯