首页 > 解决方案 > 当文本包含表情符号时,表情符号无法随画布旋转

问题描述

我正在使用旋转和缩放画布canvas.setMatrix(),然后使用canvas.drawText();. 这按预期工作。但是当我尝试绘制包含表情符号(Android 设备的默认表情符号)的文本时,它们不会被旋转。文本中的其他所有内容都按预期旋转。表情符号的绘制和缩放也可以正常工作,只是旋转不起作用,我发现它只出现在android7.0或7.0以下。

 public void draw(Canvas canvas) {
    if (TextUtils.isEmpty(mText)) {
      drawCursor(canvas);
      return;
    }
    float allTextHeight = mTextLineHeight * mLines.length;
    float y = (mHeight - allTextHeight) / 2;
    float offset = mPaint.getFontMetrics().ascent;
    canvas.save();
      canvas.translate(mWidth / 2, 0);
      float initY = y;
      for (String line : mLines) {
        drawText(canvas, line, 0f, y - offset, mPaint, initY);
        y += mTextLineHeight;
      }
    canvas.restore();
  }

标签: android

解决方案


推荐阅读