Как точно захватить изображение внутри прямоугольного оверлея в Camera? - PullRequest
0 голосов
/ 28 декабря 2018

До сих пор я успешно производил автоматическую обрезку для небольших устройств.Я сталкиваюсь с двумя проблемами: 1) автоматическая обрезка больших устройств, скажем, 6,5 дюйма не работает должным образом 2) я хочу сделать снимок внутри прямоугольной рамки

Ниже мой код:

    public static Bitmap crop(Bitmap originalBitmap) 
    {
    double originalWidth = originalBitmap.getWidth();
    double originalHeight = 
     originalBitmap.getHeight();
    double scaleX = originalWidth / 1280;
      int navBarHeightPxIn1280x720Ui 


     CommonUtils.px2dp(CommonUtils.get 
     NavigationBarHeightInPx()) * 5 ;
    double scaleXMultiplier = ((double) 1280) / 
    ((double) (1280 - navBarHeightPxIn1280x720Ui));
    scaleX = scaleX * scaleXMultiplier;
    double scaleY = originalHeight / 720;
    int x = (int) (52 * scaleX + 0.5);
    int y = (int) (80 * scaleY + 0.5);
    int width = (int) (896 * scaleX + 0.5);
    int height = (int) (588 * scaleY + 0.5);
    return Bitmap.createBitmap(originalBitmap, x, y, 
     width, height);
     }
...