Browse Source

feat: 红色部分算遮挡区域

hexleo 5 years ago
parent
commit
ebb61e7de1

+ 4 - 6
Android/PlayerProj/animtool/src/main/java/com/tencent/qgame/playerproj/animtool/vapx/GetMaskFrame.java

@@ -187,13 +187,11 @@ public class GetMaskFrame {
                 int maskYOffset = frame.y;
                 // 先从遮罩 maskArgb 取色
                 int maskColor = maskArgb[x + maskXOffset + (y + maskYOffset) * maskW];
+                // 黑色部分不遮挡,红色部分被遮挡
                 int alpha = maskColor >>> 24;
-                // 文字mask 黑色部分不遮挡,红色部分被遮挡
-                if (isTxtMask) {
-                    int maskRed = (maskColor & 0x00ff0000) >>> 16;
-                    int txtAlpha = 255 - maskRed; // 红色部分算遮挡
-                    alpha = (int) ((txtAlpha / 255f) * (alpha / 255f) * 255f);
-                }
+                int maskRed = (maskColor & 0x00ff0000) >>> 16;
+                int redAlpha = 255 - maskRed; // 红色部分算遮挡
+                alpha = (int) ((redAlpha / 255f) * (alpha / 255f) * 255f);
                 // 最终color
                 int color = 0xff000000 + (alpha << 16) + (alpha << 8) + alpha;