Flutter的Camera包中如何设置分辨率

Fre*_*red 7 camera dart flutter

我正在开发一个使用Camera 包的相机预览的 flutter 应用程序。

我正在初始化相机控制器,如下所示:

final controller = CameraController(
  _cameras[0],
  ResolutionPreset.ultraHigh,
  enableAudio: false,
  imageFormatGroup: ImageFormatGroup.bgra8888,
);
Run Code Online (Sandbox Code Playgroud)

枚举ResolutionPreset有以下选项:

enum ResolutionPreset {
  /// 352x288 on iOS, 240p (320x240) on Android
  low,

  /// 480p (640x480 on iOS, 720x480 on Android)
  medium,

  /// 720p (1280x720)
  high,

  /// 1080p (1920x1080)
  veryHigh,

  /// 2160p (3840x2160)
  ultraHigh,

  /// The highest resolution available.
  max,
}
Run Code Online (Sandbox Code Playgroud)

分辨率需要是4032x2034. 如何使用自定义分辨率?

Oma*_*att 0

ResolutionPreset枚举不提供设置自定义分辨率的选项。作为解决方法,您可以使用ResolutionPreset.max然后调整图像大小。使用映像包,您可以将映像调整为所需的大小width并将height其写入存储中。

// Read a jpeg image from file path
Image image = decodeImage(File('image path').readAsBytesSync());

// Resize the image
Image resizedImage = copyResize(image, width: 4032, height: 2034);

// Save the image as jpg
File('out/image-resized.jpg')
    ..writeAsBytesSync(encodeJpg(resizedImage, quality: 100));
Run Code Online (Sandbox Code Playgroud)