我正在开发Flutter应用程序。我需要相机的功能,并决定使用Camera Plugin为此。我设置了3:4的纵横比,但是图像被扭曲了,而且比它应该的要小。我认为规模有问题。设置相机宽高比(即3:4)的正确方法是什么?
final size = MediaQuery.of(context).size;
final deviceRatio = size.width / size.height;
final aspectRatio=3/4;
Transform.scale(
scale: controller.value.aspectRatio / deviceRatio,
child: Center(
child: AspectRatio(
aspectRatio: aspectRatio,
child: CameraPreview(controller),
)
),
)发布于 2019-12-10 12:10:43
我这样解决了我的问题
final size = MediaQuery.of(context).size.width;
Transform.scale(
scale: 1.0,
child: AspectRatio(
aspectRatio: 3.0 / 4.0,
child: OverflowBox(
alignment: Alignment.center,
child: FittedBox(
fit: BoxFit.fitWidth,
child: Container(
width: size,
height: size / controller.value.aspectRatio,
child: Stack(
children: <Widget>[
CameraPreview(controller),
],
),
),
),
),
),
)发布于 2020-09-27 15:06:17
RotatedBox(
quarterTurns:
MediaQuery.of(context).orientation == Orientation.landscape
? 3
: 0,
child: Transform.scale(
scale: 1.0,
child: AspectRatio(
aspectRatio: 3.0 / 4.0,
child: OverflowBox(
alignment: Alignment.center,
child: FittedBox(
fit: BoxFit.fitWidth,
child: Container(
width: size,
height: size / cameraController.value.aspectRatio,
child: Stack(
children: <Widget>[
CameraPreview(cameraController),
],
),
),
),
),
),
),
)https://stackoverflow.com/questions/59207590
复制相似问题