summaryrefslogtreecommitdiffstats
path: root/gallerycommon
diff options
context:
space:
mode:
authorChih-Chung Chang <chihchung@google.com>2011-09-19 19:57:35 +0800
committerChih-Chung Chang <chihchung@google.com>2011-09-20 10:15:58 +0800
commit598c4e6d920dc8c4bd691a022f6c11864fcf5849 (patch)
treea94b6d1600291cdaf4daa72a8e563534107408fe /gallerycommon
parent7b3e8bfa2a38aca92b458b10bc3f6b5de3d5eb69 (diff)
downloadandroid_packages_apps_Snap-598c4e6d920dc8c4bd691a022f6c11864fcf5849.tar.gz
android_packages_apps_Snap-598c4e6d920dc8c4bd691a022f6c11864fcf5849.tar.bz2
android_packages_apps_Snap-598c4e6d920dc8c4bd691a022f6c11864fcf5849.zip
Fix 5337270: Thumbnail is not generated for large GIF images.
Change-Id: I8e2e8cafb01b2289f59b28b7e2eadae3dc5c0c50
Diffstat (limited to 'gallerycommon')
-rw-r--r--gallerycommon/src/com/android/gallery3d/common/BitmapUtils.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/gallerycommon/src/com/android/gallery3d/common/BitmapUtils.java b/gallerycommon/src/com/android/gallery3d/common/BitmapUtils.java
index 060d7f32e..c34e89631 100644
--- a/gallerycommon/src/com/android/gallery3d/common/BitmapUtils.java
+++ b/gallerycommon/src/com/android/gallery3d/common/BitmapUtils.java
@@ -155,6 +155,17 @@ public class BitmapUtils {
return resizeBitmapByScale(bitmap, scale, recycle);
}
+ // Resize the bitmap if each side is >= targetSize * 2
+ public static Bitmap resizeDownIfTooBig(
+ Bitmap bitmap, int targetSize, boolean recycle) {
+ int srcWidth = bitmap.getWidth();
+ int srcHeight = bitmap.getHeight();
+ float scale = Math.max(
+ (float) targetSize / srcWidth, (float) targetSize / srcHeight);
+ if (scale > 0.5f) return bitmap;
+ return resizeBitmapByScale(bitmap, scale, recycle);
+ }
+
// Crops a square from the center of the original image.
public static Bitmap cropCenter(Bitmap bitmap, boolean recycle) {
int width = bitmap.getWidth();