|
|
@@ -35,6 +35,7 @@ import android.view.TextureView;
|
|
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
|
|
+import com.miekir.common.utils.SizeTool;
|
|
|
import com.miekir.ocr.R;
|
|
|
import com.miekir.ocr.base.BaseCameraActivity;
|
|
|
import com.miekir.ocr.tool.CameraPreviewTool;
|
|
|
@@ -450,10 +451,10 @@ public class CameraActivity extends BaseCameraActivity {
|
|
|
// 得到裁剪后的图片
|
|
|
Bitmap originalBmp = BitmapFactory.decodeByteArray(jpegData , 0, jpegData.length);
|
|
|
// 这里由于要快速拍照,使用的格式是ImageFormat.YUV_420_888,导致拍出来的照片自动逆时针90度,所以要转换裁剪位置
|
|
|
- int newLeft = mTop;
|
|
|
- int newTop = (originalBmp.getHeight()-mRight);
|
|
|
- int newWidth = (mBottom-mTop);
|
|
|
- int newHeight = (mRight-mLeft);
|
|
|
+ int newLeft = mTop*originalBmp.getHeight()/ SizeTool.SCREEN_WIDTH;
|
|
|
+ int newTop = (SizeTool.SCREEN_WIDTH-mRight)*originalBmp.getHeight()/ SizeTool.SCREEN_WIDTH;
|
|
|
+ int newWidth = (mBottom-mTop)*originalBmp.getHeight()/ SizeTool.SCREEN_WIDTH;
|
|
|
+ int newHeight = (mRight-mLeft)*originalBmp.getHeight()/ SizeTool.SCREEN_WIDTH;
|
|
|
Bitmap croppedBmp = Bitmap.createBitmap(originalBmp, newLeft, newTop, newWidth, newHeight);
|
|
|
// 旋转90度,让OCR可以识别
|
|
|
Bitmap rotatedBitmap = ImageUtil.rotateBitmap90(croppedBmp);
|