日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python gif 透明,Python3+试点批量处理简单的GIF到PNG并透明地去除背景色,python3Pillow,gif,转成,png,透明化,去掉...

發(fā)布時(shí)間:2025/3/15 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python gif 透明,Python3+试点批量处理简单的GIF到PNG并透明地去除背景色,python3Pillow,gif,转成,png,透明化,去掉... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. 安裝Pillow, 只用這個(gè)應(yīng)該也可以,

2. 安裝 cImage

下載后解壓,拷貝image.py到你python安裝目錄的?Lib\site-packages 中。

from PIL import Image

import os

import image

def get_imlist(path):

"""返回目錄中所有g(shù)if圖像的文件名列表圖像的文件名列表"""

return [os.path.join(path,f) for f in os.listdir(path) if f.endswith(".gif")]

path = "E:\sucai\change_git_to_png\last-guardian-sprites"

listdir = get_imlist(path)

print (listdir)

def iter_frames(im):

try:

i= 0

while 1:

im.seek(i)

imframe = im.copy()

if i == 0:

palette = imframe.getpalette()

else:

imframe.putpalette(palette)

yield imframe

i += 1

except EOFError:

pass

"""for i, frame in enumerate(iter_frames(im)):"""

""" ? ?frame.save('bmg4_rt2.png',**frame.info)"""

for dir in listdir:

print(dir)

im = Image.open(dir)

for i, frame in enumerate(iter_frames(im)):

png_file_name = (str(dir)[:-3]+'png')

frame.save(png_file_name,**frame.info)

png_im = Image.open(png_file_name)

png_im = png_im.convert('RGBA')

width = png_im.size[0]

height = png_im.size[1]

color_0 = png_im.getpixel((0,0))

newImage = []

for png_i in range(0, width):

for png_j in range(0, height):

png_data = png_im.getpixel((png_i, png_j))

if (png_data == color_0):

png_data = png_data[:-1] + (0,)

png_im.putpixel((png_i, png_j),png_data)

png_im.save(png_file_name)

說(shuō)明:

1.?Image.open(png_file_name)? 打開png,默認(rèn)只有 RGB 三通道

2. 轉(zhuǎn)成 RGBA 四通道,最后那個(gè)A表示透明度,取值范圍是0到255, 值越大表示越不透明,

所以我們的目標(biāo)就是要把透明度設(shè)置為0。

png_data[:-1] 就是取 RGB 三個(gè)值,? +? (0,) 就是 把A設(shè)置成0.

然后改變 點(diǎn)(i,j)的像素。

3. 別忘記再次 保存為png 圖片格式。

效果

我使用的是GIMP打開的。

參考資料,感謝:

總結(jié)

以上是生活随笔為你收集整理的python gif 透明,Python3+试点批量处理简单的GIF到PNG并透明地去除背景色,python3Pillow,gif,转成,png,透明化,去掉...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。