2013-09-02 3 views
-2

Я работаю в приложении для Android, но у меня возникла проблема, когда я получаю изображение с камеры. Я показываю это изображение в представлении изображения, но мне нужно показать то же изображение, что и миниатюра. Я проверил одно приложение здесь является linkПолучите изображение как миниатюра

Вот изображение:

enter image description here

ответ

1

Используйте следующий метод для получения миниатюр.

Этот метод полезен, когда у вас есть «Путь» изображения.

/** 
* Create a thumb of given argument size 
* 
* @param selectedImagePath 
*   : String value indicate path of Image 
* @param thumbWidth 
*   : Required width of Thumb 
* @param thumbHeight 
*   : required height of Thumb 
* @return Bitmap : Resultant bitmap 
*/ 
public static Bitmap createThumb(String selectedImagePath, int thumbWidth, 
     int thumbHeight) { 
    BitmapFactory.Options options = new BitmapFactory.Options(); 

    // Decode weakReferenceBitmap with inSampleSize set 
    options.inJustDecodeBounds = true; 

    BitmapFactory.decodeFile(selectedImagePath, options); 

    final int height = options.outHeight; 
    final int width = options.outWidth; 

    int inSampleSize = 1; 

    if (height > thumbHeight || width > thumbWidth) { 
     if (width > height) { 
      inSampleSize = Math.round((float) height/(float) thumbHeight); 
     } else { 
      inSampleSize = Math.round((float) width/(float) thumbWidth); 
     } 
    } 

    options.inJustDecodeBounds = false; 
    options.inSampleSize = inSampleSize; 

    return BitmapFactory.decodeFile(selectedImagePath, options); 
} 

Чтобы использовать этот метод, используется

createThumb("path of image",100,100); 

Редактировать

Этот метод, когда у вас есть Bitmap вашего изображения.

public static Bitmap createThumb(Bitmap sourceBitmap, int thumbWidth,int thumbHeight) { 
    return Bitmap.createScaledBitmap(sourceBitmap, thumbWidth, thumbHeight,true); 
} 

использовать этот метод

createThumb(editedImage, 100, 100); 
+0

Да .. почему нет .. есть один другой способ для этого. Подождите .. редактирование моего ответа. –

+0

@priya, :) Сначала вам нужно создать большой палец, тогда вам нужно применить эффект к недавно созданному большому пальцу. Например: 1) Создайте большой палец выбранного изображения, 2) примените эффект, 3) установите в галерее. Очень просто ..: D –

+0

@priya, вы также можете увидеть мое приложение в игровом магазине, используя keywork «i2cam» :) –

0

Попробуйте этот метод будет обрешетка эскиз размера вы хотите также сохранить пропорции и масштабирование

public Bitmap crateThumbNail(String imagePath,int size) { 
     try { 
      // Decode image size 
      BitmapFactory.Options o = new BitmapFactory.Options(); 
      o.inJustDecodeBounds = true; 
      BitmapFactory.decodeFile(imagePath, o); 
      // The new size we want to scale to 
      final int REQUIRED_SIZE = size; 

      // Find the correct scale value. It should be the power of 2. 
      int scale = 1; 
      while (o.outWidth/scale/2 >= REQUIRED_SIZE && o.outHeight/scale/2 >= REQUIRED_SIZE) 
       scale *= 2; 

      // Decode with inSampleSize 
      BitmapFactory.Options o2 = new BitmapFactory.Options(); 
      o2.inSampleSize = scale; 
      return BitmapFactory.decodeFile(imagePath, o2); 
     } catch (Throwable e) { 
      e.printStackTrace(); 
     } 
     return null; 

    } 
Смежные вопросы