当前位置: 首页 > 工具软件 > ColorUtils > 使用案例 >

colorUtils

郭业
2023-12-01

public class ColorCalculator {
    //需要计算的原始颜色
    private static String originalColor = "#23a8d2";
    //需要计算颜色对于的透明度
    private static float percentTransparent = 0.5f;
    //透明层对应的底色
    private static String bgColor = "#000000";


    public static void main(String[] args) {


        if (originalColor.startsWith("#")) {
            originalColor = originalColor.replace("#", "");
        }
        if (bgColor.startsWith("#")) {
            bgColor = bgColor.replace("#", "");
        }
        int colorR = Integer.valueOf(originalColor.substring(0, 2), 16);
        int colorG = Integer.valueOf(originalColor.substring(2, 4), 16);
        int colorB = Integer.valueOf(originalColor.substring(4), 16);


        int bgColorR = Integer.valueOf(bgColor.substring(0, 2), 16);
        int bgColorG = Integer.valueOf(bgColor.substring(2, 4), 16);
        int bgColorB = Integer.valueOf(bgColor.substring(4), 16);


        int resultColorR = (int) (colorR * percentTransparent + (1 - percentTransparent) * bgColorR);
        int resultColorG = (int) (colorG * percentTransparent + (1 - percentTransparent) * bgColorG);
        int resultColorB = (int) (colorB * percentTransparent + (1 - percentTransparent) * bgColorB);


        String result = "#" + Integer.toHexString(resultColorR) + Integer.toHexString(resultColorG) + Integer.toHexString(resultColorB);
        System.out.printf("最后的结果是:%s", result);
    }
}
 类似资料:

相关阅读

相关文章

相关问答