优化TargetSize
This commit is contained in:
@@ -155,10 +155,20 @@ public class DefaultCameraScan extends CameraScan {
|
|||||||
LogUtils.d(String.format("screenSize: %d * %d",mScreenWidth,mScreenHeight));
|
LogUtils.d(String.format("screenSize: %d * %d",mScreenWidth,mScreenHeight));
|
||||||
//因为为了保持流畅性和性能,限制在1080p,在此前提下尽可能的找到屏幕接近的分辨率
|
//因为为了保持流畅性和性能,限制在1080p,在此前提下尽可能的找到屏幕接近的分辨率
|
||||||
if(mScreenWidth < mScreenHeight){
|
if(mScreenWidth < mScreenHeight){
|
||||||
|
float ratio = mScreenWidth / (float)mScreenHeight;
|
||||||
|
if(ratio > 0.7){//一般应用于平板
|
||||||
|
mTargetSize = new Size(mScreenWidth,mScreenWidth / 3 * 4);
|
||||||
|
}else{
|
||||||
mTargetSize = new Size(mScreenWidth,mScreenWidth / 9 * 16);
|
mTargetSize = new Size(mScreenWidth,mScreenWidth / 9 * 16);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
float ratio = mScreenHeight / (float)mScreenWidth;
|
||||||
|
if(ratio > 0.7){//一般应用于平板
|
||||||
|
mTargetSize = new Size(mScreenHeight / 3 * 4, mScreenHeight);
|
||||||
}else{
|
}else{
|
||||||
mTargetSize = new Size(mScreenHeight / 9 * 16, mScreenHeight);
|
mTargetSize = new Size(mScreenHeight / 9 * 16, mScreenHeight);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
mBeepManager = new BeepManager(mContext);
|
mBeepManager = new BeepManager(mContext);
|
||||||
mAmbientLightManager = new AmbientLightManager(mContext);
|
mAmbientLightManager = new AmbientLightManager(mContext);
|
||||||
@@ -237,7 +247,8 @@ public class DefaultCameraScan extends CameraScan {
|
|||||||
mCameraProviderFuture.addListener(() -> {
|
mCameraProviderFuture.addListener(() -> {
|
||||||
|
|
||||||
try{
|
try{
|
||||||
Preview preview = mCameraConfig.options(new Preview.Builder());
|
Preview preview = mCameraConfig.options(new Preview.Builder()
|
||||||
|
.setTargetResolution(mTargetSize));
|
||||||
|
|
||||||
//相机选择器
|
//相机选择器
|
||||||
CameraSelector cameraSelector = mCameraConfig.options(new CameraSelector.Builder());
|
CameraSelector cameraSelector = mCameraConfig.options(new CameraSelector.Builder());
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ public abstract class AreaRectAnalyzer extends ImageAnalyzer {
|
|||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
public Result analyze(byte[] data, int width, int height) {
|
public Result analyze(byte[] data, int width, int height) {
|
||||||
LogUtils.d(String.format("width:%d, height:%d",width,height));
|
|
||||||
if(mDecodeConfig != null){
|
if(mDecodeConfig != null){
|
||||||
if(mDecodeConfig.isFullAreaScan()){
|
if(mDecodeConfig.isFullAreaScan()){
|
||||||
//mDecodeConfig为空或者支持全区域扫码识别时,直接使用全区域进行扫码识别
|
//mDecodeConfig为空或者支持全区域扫码识别时,直接使用全区域进行扫码识别
|
||||||
|
|||||||
Reference in New Issue
Block a user