大家。 这是我在stackoverflow中的第一个问题。 我希望你能理解我的英语不好。
我在画布上画出严肃的重音时发现了一个奇怪的问题。我一直在测试在android上的画布上绘制文本,然后我意识到硬件加速画布不会画出很少的重音。
这是代码和属性。
hardwareAccelerated:true
canvas.drawText("\u0E36", 100, 100, paint);
canvas.drawText("isHardwareAccelerated : " + isHardwareAccelerated(), 150, 200, paint);
以上代码不会在画布上绘制\ u0E36字符。
hardwareAccelerated:false,带空格的Unicode(或任何字符串)
canvas.drawText(" \u0E36", 100, 100, paint);
canvas.drawText("isHardwareAccelerated : " + isHardwareAccelerated(), 150, 200, paint);
以上代码在画布上绘制\ u0E36字符。
hardwareAccelerated:false
canvas.drawText("\u0E36", 100, 100, paint);
canvas.drawText("isHardwareAccelerated : " + isHardwareAccelerated(), 150, 200, paint);
以上代码在画布上绘制\ u0E36字符。
我意识到当我将硬件加速设置为true时,如果没有字符串,则不会显示严重重音。
但是,如果我在严重重音之前放置任何字符或空格,它就会起作用。
并且,如果我将硬件加速设置为false,则canvas会绘制没有任何字符串的严重重音。
我的问题是,当画布硬件加速时,为什么画布不会画出严重的重音?
我猜它与硬件渲染和软件渲染有关。 但我不知道究竟是为什么。
这是我想用硬件加速在画布上绘制的内容。 这是泰国人的性格。我发现一些拉丁坟墓的口音也没有在画布上显示出来。
http://www.unicodemap.org/details/0x0E36/index.html
我的声望点是0,所以我无法发布它们的图片。 我希望你们能理解我的英语不好。