diff --git a/check_compress_psd.py b/check_compress_psd.py index 8baaca1..99c97ab 100644 --- a/check_compress_psd.py +++ b/check_compress_psd.py @@ -34,7 +34,9 @@ def parse_psd(path): has_thumbnail = False lines = {} patch_stages = {} + spatch_stages = {} bad_stages = {} + sbad_stages = {} auto_stages = {} #patch的末尾数字 @@ -100,6 +102,13 @@ def parse_psd(path): patch_stages[nArr[1]].append(nArr[2]) patch_end.append(item.name.replace("patch", "")) + elif nArr[0] == 'spatch': + if nArr[1] not in spatch_stages: + spatch_stages[nArr[1]] = [] + + spatch_stages[nArr[1]].append(f"{nArr[2]}_{nArr[3]}") + + patch_end.append(item.name.replace("spatch", "")) elif nArr[0] == 'bad': if nArr[1] not in bad_stages: bad_stages[nArr[1]] = [] @@ -107,6 +116,13 @@ def parse_psd(path): bad_stages[nArr[1]].append(nArr[2]) bad_end.append(item.name.replace("bad", "")) + elif nArr[0] == 'sbad': + if nArr[1] not in sbad_stages: + sbad_stages[nArr[1]] = [] + + sbad_stages[nArr[1]].append(f"{nArr[2]}_{nArr[3]}") + + bad_end.append(item.name.replace("sbad", "")) elif nArr[0] == 'auto': if nArr[1] not in auto_stages: auto_stages[nArr[1]] = [] @@ -181,6 +197,14 @@ def parse_psd(path): for item in patch_end: if item not in bad_end: log.append("拼图图层找不到bad图层:patch{}".format(item)) + + for stage in spatch_stages: + tmp = {} + for item in spatch_stages[stage]: + if item in tmp: + log.append("存在重复图层:spatch_{}_{}".format(stage, item)) + else: + tmp[item] = 0 log.append("检测结束")