我正在学习CameraX,CameraXBasic是一个示例代码。
我编写了一个基于CameraFragment.kt的 zoomX 函数。你可以看到代码A。我认为该功能可以随时放大图片。
我发现当我用小值调用它时,可以放大图片,例如zoomX(2f)
,,zoomX(3f)
但是当我使用大值时,图片不会再次放大zoomX(6.0f)
,zoomX(7.0f)
...为什么?
代码 A
private lateinit var viewFinder: TextureView
private var preview: Preview? = null
fun zoomX(orign: Float ){
val x=orign+1
val singleWidth=viewFinder.width/x
val singleHeight=viewFinder.height/x
val left=viewFinder.width/2f-singleWidth/2f
val right=left+singleWidth
val top=viewFinder.height/2f-singleHeight/2f
val bottom=top+singleHeight
val my= Rect(left.toInt(), top.toInt(), right.toInt(), bottom.toInt())
preview?.zoom(my)
}