17 lines
879 B
Python
17 lines
879 B
Python
# -*- coding: utf-8 -*-
|
|
from PIL import Image
|
|
src = r"e:\MCStudioDownload\work\3027246179@qq.com\Cpp\AddOn\309c2d420bc84ee986db9cdd070ff02a\_sa_hanhua_out\_tmp\jianbing_gen.jpg"
|
|
dst = r"e:\MCStudioDownload\work\3027246179@qq.com\Cpp\AddOn\309c2d420bc84ee986db9cdd070ff02a\resource_pack_t7eJjrxY\textures\items\jianbing.png"
|
|
im = Image.open(src).convert("RGBA")
|
|
# 生成图为 JPG,无透明通道;先裁切到主体并缩放到16x16等比例,再把背景置为透明
|
|
# 直接等比缩放整图到16x16(原图为方形,保持比例不变形)
|
|
resized = im.resize((16, 16), Image.LANCZOS)
|
|
# 对接近白色的背景擦除为透明(JPG无alpha)
|
|
pix = resized.load()
|
|
for y in range(16):
|
|
for x in range(16):
|
|
r, g, b, a = pix[x, y]
|
|
if r > 245 and g > 240 and b > 230:
|
|
pix[x, y] = (r, g, b, 0)
|
|
resized.save(dst)
|
|
print("saved", resized.size) |