Изменить размер изображения (растрового изображения) в соответствии с соотношением сторон без потери качества изображения Android?

#android #image

#Android #изображение

Вопрос:

Необходимо изменить размер изображения (растрового изображения) без потери качества и четкости в соответствии с соотношением сторон. Я вижу, что некоторое время теряется качество, а некоторое время теряется размер. Я хочу хорошее качество изображения после изменения размера, возможно, не совсем требуемая высота и ширина. Я использую: `

 private  Bitmap scaleToActualAspectRatio(Bitmap image) {

        int maxWidth = getActivity().getWindowManager().getDefaultDisplay()
                .getWidth();
        int maxHeight = getActivity().getWindowManager().getDefaultDisplay()
                .getHeight();


        if (maxHeight > 0 amp;amp; maxWidth > 0) {
            int width = image.getWidth();
            int height = image.getHeight();
            float ratioBitmap = (float) width / (float) height;
            float ratioMax = (float) maxWidth / (float) maxHeight;

            int finalWidth = maxWidth;
            int finalHeight = maxHeight;
            if (ratioMax > 1) {
                finalWidth = (int) ((float)maxHeight * ratioBitmap);
            } else {
                finalHeight = (int) ((float)maxWidth / ratioBitmap);
            }
            image = Bitmap.createScaledBitmap(image, finalWidth, finalHeight, true);
            return image;
        } else {
            return image;
        }`
  

Комментарии:

1. вы не можете достичь такого же качества при большем размере, чем исходное изображение,

2. да, я хочу добиться хорошего качества изображения, возможно, большего размера…