Lightest O = MAX(D, S)
(int dst, int src)
| 2630 | * O = MAX(D, S) |
| 2631 | */ |
| 2632 | private static int blend_lightest(int dst, int src) { |
| 2633 | int a = src >>> 24; |
| 2634 | |
| 2635 | int s_a = a + (a >= 0x7F ? 1 : 0); |
| 2636 | int d_a = 0x100 - s_a; |
| 2637 | |
| 2638 | int rb = max(src & RED_MASK, dst & RED_MASK) | |
| 2639 | max(src & BLUE_MASK, dst & BLUE_MASK); |
| 2640 | int gn = max(src & GREEN_MASK, dst & GREEN_MASK); |
| 2641 | |
| 2642 | return min((dst >>> 24) + a, 0xFF) << 24 | |
| 2643 | ((dst & RB_MASK) * d_a + rb * s_a) >>> 8 & RB_MASK | |
| 2644 | ((dst & GN_MASK) * d_a + gn * s_a) >>> 8 & GN_MASK; |
| 2645 | } |
| 2646 | |
| 2647 | |
| 2648 | /** |
no test coverage detected