Я использую Camera api для захвата изображений с идентификационных карт, у меня есть оверлей, как показано на рисунке ниже. Я хочу обрезать изображение в коробке. не могли бы вы подсказать, как именно это должно быть сделано. Я записал то, что я пытался, и результаты, которые он мне дал.
Это скриншот идентификатора, который я хочу захватить ..
Выход.
белая прямоугольная коробка - фоторамка, которая находится в центре в Относительном расположении
<View
android:id="@+id/photo_frame"
android:layout_width="match_parent"
android:layout_height="212dp"
android:background="@drawable/bg_photo_frame"
android:layout_centerInParent="true"
android:layout_margin="@dimen/double_padding"
android:visibility="visible"/>
Как рассчитать этот кадр, чтобы вырезать изображение
это то, что я должен вырезать изображение, которое нуждается в модификации, но не уверен, какой путь вперед
public Bitmap cutImage(final Bitmap srcBmp, final int pixepWidth, final int pixelsHeight, float widthRatio) {
// Bitmap croppedBitmap = Bitmap.createBitmap(bitmap, 20, 20, pixepWidth, pixelsHeight);
// return croppedBitmap;
Bitmap dstBmp;
if (srcBmp.getWidth() >= srcBmp.getHeight()){
dstBmp = Bitmap.createBitmap(
srcBmp,
srcBmp.getWidth()/2 - srcBmp.getHeight()/2,
0,
srcBmp.getHeight(),
srcBmp.getHeight()
);
}else{
dstBmp = Bitmap.createBitmap(
srcBmp,
0,
srcBmp.getHeight()/2 - srcBmp.getWidth()/2,
srcBmp.getWidth(),
srcBmp.getWidth()
);
}
return dstBmp;
}