package jp.wasabeef.fresco.processors; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Paint; import com.facebook.imagepipeline.request.BasePostprocessor; import java.util.ArrayList; import java.util.List; public class CombinePostProcessors extends BasePostprocessor { private List<BasePostprocessor> mProcessors; private CombinePostProcessors(List<BasePostprocessor> processors) { super(); mProcessors = processors; } @Override public void process(Bitmap dest, Bitmap src) { Canvas canvas = new Canvas(dest); Paint paint = new Paint(); canvas.drawBitmap(src, 0, 0, paint); for(BasePostprocessor processor : mProcessors) { processor.process(dest, dest); } } public static class Builder { private List<BasePostprocessor> processors; public Builder() { processors = new ArrayList<BasePostprocessor>(); } public Builder add(BasePostprocessor processor) { processors.add(processor); return this; } public CombinePostProcessors build() { return new CombinePostProcessors(processors); } } }