CWAC Camera - 自定义ImageCleanupTask的最佳方法是什么?

时间:2014-10-11 23:29:06

标签: android android-camera commonsware-cwac cwac-camera

我使用cwac-camera库使用自定义应用内相机拍照。

我在SimpleCameraHost中覆盖adjustPreviewParameters并设置了JPEG质量。

@Override
public Parameters adjustPreviewParameters(Parameters parameters) {
    super.adjustPreviewParameters(parameters);
    parameters.setJpegQuality(80);
    return (parameters);
}

不幸的是,根据this question,setJpegQuality方法不适用于某些设备(例如S3)。

我可以看到cwac-camera ImageCleanupTask always saves the manipulated image at 100% JPEG quality

自定义ImageCleanupTask的最佳方法是什么?

我应该在PictureTransaction中公开setJpegQuality方法吗?或者我们想要一个更通用的解决方案(比如允许注入ImageCleanupTask)?

1 个答案:

答案 0 :(得分:1)

  

我可以看到cwac-camera ImageCleanupTask总是以100%JPEG质量保存操作图像。

理想情况下,这是可配置的。图书馆理想情况下会有很多东西。 : - )

  

自定义ImageCleanupTask的最佳方法是什么?

如果你的意思是"如何在那里获得JPEG百分比?",增强PictureTransaction

  

我应该在PictureTransaction中公开setJpegQuality方法吗?

我会jpegQuality(),因为PictureTransaction使用构建器/流畅的API模式。

请注意,通过此更改,您可能希望从现有代码中删除parameters.setJpegQuality(80);。否则,图像将降级两次,一次是捕获(对于支持它的设备),一次是将图像写入磁盘,这可能不是你想要的。