【问题标题】:Drawing text at an angle (e.g. upside down) in Android在 Android 中以一定角度(例如倒置)绘制文本
【发布时间】:2011-02-04 11:08:51
【问题描述】:

我正在尝试在 Android 中构建自定义时钟视图。见图片http://twitpic.com/1devk7

到目前为止,为了绘制时间和小时标记,我一直在使用 Canvas.rotate 方法来获得所需的效果。但是,请注意,由于绘制角度的原因,很难解释时钟下半部分的数字(例如 6 还是 9?)。

使用 drawText 时,是否可以以 45/90/180 度绘制文本,以便在我的 onDraw 方法完成后所有文本都显示为直立?

【问题讨论】:

    标签: android android-canvas drawtext


    【解决方案1】:

    要在点 (x,y) 处绘制旋转 90 度的文本,请使用以下代码:

    canvas.save();
    canvas.rotate(-90, x, y);
    canvas.drawText(text, x, y, paint);
    canvas.restore();
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 谢谢,我确实已经看到了这个答案(而且我已经在使用 Canvas.rotate)但我刚刚意识到我可以围绕中心旋转以找到我的绘图点,然后围绕我的绘图点旋转到以一定角度绘制我的文字。不知道为什么我以前没有想到过!谢谢。
      • 达米安你能解释一下吗?
      猜你喜欢
      • 2011-03-22
      • 2011-05-25
      • 1970-01-01
      • 2010-09-19
      • 1970-01-01
      • 1970-01-01
      • 2020-08-20
      相关资源
      最近更新 更多