Index: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
index 95ed270e8a76bc88aa860fda691c791885f77af8..b4aefef16df7e77335d4a4731b8b042b54a8ec29 100644 |
--- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
+++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java |
@@ -69,6 +69,7 @@ import org.chromium.ui.ViewAndroidDelegate; |
import org.chromium.ui.WindowAndroid; |
import org.chromium.ui.gfx.DeviceDisplayInfo; |
+import java.io.ByteArrayOutputStream; |
import java.lang.annotation.Annotation; |
import java.lang.reflect.Field; |
import java.util.Arrays; |
@@ -336,6 +337,25 @@ import java.util.Map; |
} |
} |
+ @CalledByNative |
+ private byte[] compressBitmap(Bitmap bitmap, String format, int quality) { |
no sievers
2013/08/05 21:46:44
ContentViewCore like an odd place for this functio
|
+ Bitmap.CompressFormat compressFormat; |
+ if ("jpeg".equals(format)) |
+ compressFormat = Bitmap.CompressFormat.JPEG; |
+ else if ("png".equals(format)) |
+ compressFormat = Bitmap.CompressFormat.PNG; |
+ else if ("webp".equals(format)) |
+ compressFormat = Bitmap.CompressFormat.WEBP; |
+ else |
+ return null; |
+ |
+ ByteArrayOutputStream baos = new ByteArrayOutputStream(); |
+ bitmap.compress(compressFormat, quality, baos); |
+ bitmap.recycle(); |
+ |
+ return baos.toByteArray(); |
+ } |
+ |
private final Context mContext; |
private ViewGroup mContainerView; |
private InternalAccessDelegate mContainerViewInternals; |