package com.bumptech.glide.load.resource.transcode; import android.graphics.Bitmap; import com.bumptech.glide.load.engine.Resource; import com.bumptech.glide.load.resource.bytes.BytesResource; import java.io.ByteArrayOutputStream; public class BitmapBytesTranscoder implements ResourceTranscoder { private final Bitmap.CompressFormat compressFormat; private final int quality; public BitmapBytesTranscoder() { this(Bitmap.CompressFormat.JPEG, 100); } public BitmapBytesTranscoder(Bitmap.CompressFormat compressFormat, int quality) { this.compressFormat = compressFormat; this.quality = quality; } @Override public Resource transcode(Resource toTranscode) { ByteArrayOutputStream os = new ByteArrayOutputStream(); toTranscode.get().compress(compressFormat, quality, os); toTranscode.recycle(); return new BytesResource(os.toByteArray()); } @Override public String getId() { return "BitmapBytesTranscoder.com.bumptech.glide.load.resource.transcode"; } }