Java tutorial
//package com.java2s; //License from project: Apache License import android.graphics.Color; public class Main { /** * Composite two potentially translucent colors over each other and returns the result. */ public static int compositeColors(int fg, int bg) { final float alpha1 = Color.alpha(fg) / 255f; final float alpha2 = Color.alpha(bg) / 255f; float a = (alpha1 + alpha2) * (1f - alpha1); float r = (Color.red(fg) * alpha1) + (Color.red(bg) * alpha2 * (1f - alpha1)); float g = (Color.green(fg) * alpha1) + (Color.green(bg) * alpha2 * (1f - alpha1)); float b = (Color.blue(fg) * alpha1) + (Color.blue(bg) * alpha2 * (1f - alpha1)); return Color.argb((int) a, (int) r, (int) g, (int) b); } }