问题:使用 CameraPreview 时,相机屏幕处于横向模式,纵横比略有偏差。这很奇怪,因为相同的代码在其他项目中运行良好。该怎么办?
问题:
使用 CameraPreview 时,相机屏幕处于横向模式,纵横比略有偏差。这很奇怪,因为相同的代码在其他项目中运行良好。
这个问题的根本解决方案是什么?我正在寻找一种超越简单使用 Transform.rotate 的解决方案。
这是我的代码
SystemChrome.setPreferredOrientations(
[
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
],
);
主程序
Future<void> initializeCamera() async {
try {
_availableCameras = await availableCameras();
debugPrint(' _availableCameras : ${_availableCameras![0]} ');
if (_availableCameras!.isNotEmpty) {
final controller = CameraController(
_availableCameras![_selectedCameraIndex],
ResolutionPreset.max,
enableAudio: false,
);
await controller.initialize();
await controller.lockCaptureOrientation(DeviceOrientation.portraitUp);
state = controller; // Set the state with the initialized controller
debugPrint(' camera initialized ');
}
} catch (e) {
state = null; // If there's an error, set the state to null
}
}
控制器.dart
...
body: CameraPreview(cameraController!)
...
一些页面.dart
这就是它的样子
你能帮助我吗?我正在使用 macOs_Desktop、android、ios
我尝试过 chatGPT 和 Google 搜索,但对我不起作用