Pillow TIFF格式

2021-07-09 17:24 更新

Pillow可以讀寫TIFF文件。它可以讀取條紋圖像和平鋪圖像,像素和平面交錯(cuò)的多波段圖像。如果您安裝了libtiff及其頭文件,那么pillow可以讀寫多種壓縮的TIFF文件。否則,Pillow只能讀寫未壓縮的文件。

從5.0.0版開(kāi)始,Pillow需要libtiff讀取或?qū)懭雺嚎s文件。在該版本發(fā)布之前,Pillow支持在不使用libtiff的情況下讀取packbits、lzw和jpeg壓縮的tiff。

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

  • ?compression ?  壓縮模式。

2.0.0 新版功能.

  • ?dpi ?  圖像分辨率 (xdpi, ydpi) 為元組,你可以使用 ?tag? 屬性獲取有關(guān)圖像分辨率的詳細(xì)信息。

1.1.5 新版功能.

  • ?resolution ? 圖像分辨率 (xres, yres) 為元組。這是以文件指定的單位為單位的度量。

1.1.5 新版功能.

這個(gè) ?tag_v2 ?屬性包含在TIFF元數(shù)據(jù)字典。鍵是來(lái)自 ?TiffTags.TAGS_V2?的數(shù)字索引。值是單個(gè)項(xiàng)的字符串或數(shù)字,在一個(gè)值的元組中返回多個(gè)值。有理數(shù)返回為 ?IFDRational? 對(duì)象。

3.0.0 新版功能.

為了與舊代碼兼容,該 ?tag?屬性包含一個(gè)解碼 TIFF 字段的字典,如在 3.0.0 版之前返回。值以字符串或數(shù)值元組的形式返回。有理數(shù)作為 的元組返回。(numerator, denominator)

3.0.0 版后已移除.

讀取多幀TIFF圖像

TIFF加載程器支持 ?seek() ?和 ?tell()? 方法,獲取并返回圖像文件中的幀編號(hào)。您可以將這些方法組合到下一幀 (?im.seek(im.tell() + 1) ?)。幀的編號(hào)從0到 ?im.num_frames - 1 ?,可以按任意順序訪問(wèn)。

??如果你試圖尋找最后一幀,im.seek()? 會(huì)拋出一個(gè) ?EOFError 。

保存TIFF圖像

這個(gè)? save()? 方法可以采用以下關(guān)鍵字參數(shù):

  • ?save_all ?  如果為真,Pillow將把圖像的所有幀保存到多幀TIFF文檔中。

3.4.0 新版功能.

  • ?append_images ?  附加為附加幀的圖像列表。列表中的每個(gè)圖像都可以是單幀或多幀圖像。但是請(qǐng)注意,為了得到正確的結(jié)果,所有附加的圖像都應(yīng)該具有相同的 ?encoderinfo ?和 ?encoderconfig ?屬性。

4.2.0 新版功能.

  • ?tiffinfo ?  一個(gè)?ImageFileDirectory_v2 ?包含TIFF標(biāo)記和值的對(duì)象或dict對(duì)象。TIFF字段類型是自動(dòng)檢測(cè)數(shù)值和字符串值的,任何其他類型都需要使用 ?ImageFileDirectory_v2 ?對(duì)象并從 ?TiffTags.TYPES ?設(shè)置輸入具有適當(dāng)?shù)臄?shù)值的?tagtype ?。

2.3.0 新版功能.

應(yīng)使用?IFDRational?對(duì)象傳入有理類型的元數(shù)據(jù)值。

3.1.0 新版功能.

為了與舊代碼兼容,?ImageFileDirectory_v1?可以在該字段中傳遞一個(gè) 對(duì)象。但是,這已被棄用。

5.4.0 新版功能.

以前的版本在使用libtiff編寫時(shí)只支持一些標(biāo)記。支持的列表位于 ?TiffTags.LIBTIFF_CORE? 。

6.1.0 新版功能.

增加了對(duì)簽名類型(例如 ?TIFF_SIGNED_LONG ?)以及多個(gè)值的支持。單個(gè)標(biāo)記=簽的多個(gè)值必須為 ?ImageFileDirectory_v2 ?作為元組并需要匹配的類型 ?tagtype ?標(biāo)記類型。

  • ?compression ?包含文件所需壓縮方法的字符串。(僅在安裝libtiff時(shí)有效)有效的壓縮方法為: ?None ?,? "tiff_ccitt"? ,? "group3"? , ?"group4"? , ?"tiff_jpeg" ?,? "tiff_adobe_deflate"? , ?"tiff_thunderscan" ?,? "tiff_deflate"? ,? "tiff_sgilog" ?,? "tiff_sgilog24"? , ?"tiff_raw_16"?
  • ?quality ? jpeg壓縮的圖像質(zhì)量,從0(最差)到100(最好)。默認(rèn)值為75。

6.1.0 新版功能.

設(shè)置TIFF頭字段的這些參數(shù)是使用TiffInfo提供的常規(guī)標(biāo)記的替代方法。

  • ?description ?
  • ?software ?
  • ?date_time ?
  • ?artist ?

  • ?copyright ?  字符串
  • ?resolution_unit ? 一個(gè)整數(shù)。1表示無(wú)單位,2表示英寸,3表示厘米。
  • ?resolution  ?整數(shù)或浮點(diǎn)數(shù),用于x和y分辨率。
  • ?x_resolution  ?整數(shù)或浮點(diǎn)數(shù)。
  • ?y_resolution  ?整數(shù)或浮點(diǎn)數(shù)。
  • dpi  一組(x_resolution, y_resolution),以英寸為分辨率單位。為了與其他圖像格式保持一致,dpi的x和y分辨率將四舍五入為最接近的整數(shù)。


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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)