【发布时间】:2020-06-14 13:40:17
【问题描述】:
我正在使用 cameraX 预览到纹理视图的相机馈送。如何使用我拥有的坐标在屏幕上绘制一个矩形?我不想要一个复杂的功能。我只是想画一个矩形。 我正在使用 kotlin 和 android studio 4.0。
【问题讨论】:
标签: android kotlin textureview
我正在使用 cameraX 预览到纹理视图的相机馈送。如何使用我拥有的坐标在屏幕上绘制一个矩形?我不想要一个复杂的功能。我只是想画一个矩形。 我正在使用 kotlin 和 android studio 4.0。
【问题讨论】:
标签: android kotlin textureview
我会在同一个 xml 的 Textureview 顶部使用 ImageView 重叠。此图像视图将加载一个仅绘制矩形的透明位图。如果你有你必须做的坐标:
val myRectPaint = Paint()
myRectPaint.strokeWidth = 5F
myRectPaint.color = Color.RED
myRectPaint.style = Paint.Style.STROKE
// Create a Canvas object for drawing on the original bitmap provided
val tempBitmap =
Bitmap.createBitmap(bitmap!!.width, bitmap.height, Bitmap.Config.ARGB_8888)
val tempCanvas = Canvas(tempBitmap)
tempCanvas.drawBitmap(bitmap, 0F, 0F, null)
tempCanvas.drawRoundRect(
RectF(x1.toFloat(), y1.toFloat(), x2.toFloat(), y2.toFloat()),
2f,
2f,
myRectPaint
)
// Use this to widen picture on top or bottom
val croppedFaceBitmap =
Bitmap.createBitmap(tempBitmap, x1, y1, x2, y2)
无论如何,您也可以从 tensorflow github 关注this example,在检测到对象时绘制圆框。
希望我能帮上忙
【讨论】: