国产gaysexchina男同gay,japanrcep老熟妇乱子伦视频,吃奶呻吟打开双腿做受动态图,成人色网站,国产av一区二区三区最新精品

Pillow GIF格式

2021-07-09 14:37 更新

Pillow可以讀取GIF87A和GIF89A版本的GIF文件格式。除非使用了gif89a功能或gif89a已經(jīng)在使用,否則庫默認情況下會在gif87a中寫入游程編碼的文件。

請注意,GIF 文件始終作為灰度 ( ?L?) 或調(diào)色板模式 ( ?P?) 圖像讀取。

這個 ?open() ?方法可以設(shè)置以下內(nèi)容info 屬性:

  • ?background ? 默認背景色(調(diào)色板顏色索引)。
  • ?transparency ? 透明度。如果圖像不透明,則省略此鍵。
  • ?version ? 版本(或 ?GIF87a ?或 ?GIF89a ?)
  • ?duration ? 可能不存在。顯示GIF當(dāng)前幀的時間(毫秒)。
  • ?loop? 可能不存在。GIF循環(huán)的次數(shù)。0意味著它將永遠循環(huán)。
  • comment ? 可能不存在。關(guān)于圖像的評論。
  • ?extension? 可能不存在。包含特定于應(yīng)用程序的信息。

讀取序列

GIF加載器支持 ?seek() ?和 ?tell()? 方法。您可以將這些方法組合到下一幀 (?im.seek(im.tell() + 1)? )。

?im.seek()? 提出一個 ?EOFError? 如果你試圖尋找最后一幀。

保存

調(diào)用 ?save()? 寫入GIF文件時,可以使用以下選項:

im.save(out, save_all=True, append_images=[im1, im2, ...])
  • ?save_all ? 如果存在且為真,則將保存圖像的所有幀。如果沒有,則只保存多幀圖像的第一幀。
  • ?append_images? 作為附加幀附加的圖像列表。列表中的每個圖像都可以是單幀或多幀圖像。目前,GIF、PDF、TIFF和WebP都支持此功能。
    它還支持ICNS和ICO。如果圖像以相關(guān)大小傳入,則將使用它們,而不是縮小主圖像。
  • ?include_color_table? 是否包括本地顏色表。
  • ?interlace? 圖像是否交錯。默認情況下為是,除非圖像的寬度或高度小于16像素。
  • ?disposal? 指示圖形顯示后的處理方式。

            0-未指定處置。

            1-不要丟棄。

            2-還原為背景色。

            3-還原到以前的內(nèi)容。

傳遞單個整數(shù)用于常量處理,或傳遞列表或元組以分別設(shè)置每個幀的處理。

  • ?palette

對保存的圖像使用指定的調(diào)色板。調(diào)色板應(yīng)該是包含 RGBRGB... 形式的調(diào)色板條目的字節(jié)或字節(jié)數(shù)組對象。它不應(yīng)超過 768 個字節(jié)。或者,調(diào)色板可以作為?PIL.ImagePalette.ImagePalette?對象傳入 。

  • ?optimize? 如果存在且為真,則嘗試通過消除未使用的顏色來壓縮調(diào)色板。這只在當(dāng)調(diào)色板可以壓縮到2個元素的下一個較小的冪次方時才有用。

請注意,如果您保存的圖像來自現(xiàn)有的 GIF,它的?info?字典中可能具有以下屬性。對于這些選項,如果您不傳入它們,它們將默認為它們的?info?值。

  • ?transparency? 透明度。
  • ?duration 多幀 gif 的每一幀的顯示持續(xù)時間,以毫秒為單位。傳遞一個固定持續(xù)時間的整數(shù),或者傳遞一個列表或元組來分別設(shè)置每幀的持續(xù)時間。
  • ?loop? 整數(shù)GIF應(yīng)循環(huán)的次數(shù)。0表示它將永遠循環(huán)。默認情況下,圖像不會循環(huán)。
  • ?comment? 關(guān)于圖像的評論。

讀取本地圖像

GIF 加載器創(chuàng)建與 GIF 文件的邏輯屏幕大小相同大小的圖像內(nèi)存,并將實際像素數(shù)據(jù)(本地圖像)粘貼到該圖像中。如果您只想要實際的像素矩形,則可以 在加載文件之前操作 ?size?和?tile?屬性:

im = Image.open(...)
if im.tile[0][0] == "gif":
    # only read the first "local image" from this GIF file
    tag, (x0, y0, x1, y1), offset, extra = im.tile[0]
    im.size = (x1 - x0, y1 - y0)
    im.tile = [(tag, (0, 0) + im.size, offset, extra)]


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號