在 canvas 中画一个正方形
Drawing a square in canvas
我有一个 canvas 正在绘制一个带有预定义边界的圆。
canvas.drawCircle((float) (getBounds().right / 2), (float) (getBounds().bottom / 2), (float) (getBounds().right / 2), paint);
现在我需要让它画一个正方形而不是圆形。所以这就是我修改的内容
(getBounds().right / 2)
而不是除以 2
我没有除以任何半径
怎么会溢出来。
这是正常圆的样子。
这就是我尝试将其变成正方形时的样子
有人可以建议我如何使用给定的边界绘制一个成功的正方形吗?
看起来答案很简单。
我所要做的就是将我的 rect
和 paint
传递给 Canvas::drawRect
这是代码
Rect rect = drawable.getBounds();
canvas.drawRect(rect, paint);
和结果图片
我有一个 canvas 正在绘制一个带有预定义边界的圆。
canvas.drawCircle((float) (getBounds().right / 2), (float) (getBounds().bottom / 2), (float) (getBounds().right / 2), paint);
现在我需要让它画一个正方形而不是圆形。所以这就是我修改的内容
(getBounds().right / 2)
而不是除以 2
我没有除以任何半径
怎么会溢出来。
这是正常圆的样子。
这就是我尝试将其变成正方形时的样子
有人可以建议我如何使用给定的边界绘制一个成功的正方形吗?
看起来答案很简单。
我所要做的就是将我的 rect
和 paint
传递给 Canvas::drawRect
这是代码
Rect rect = drawable.getBounds();
canvas.drawRect(rect, paint);
和结果图片