當前位置:編程學習大全網 - 人物素材 - Png格式

Png格式

PNG是壹種圖像文件存儲格式,旨在取代GIF和TIFF文件格式,同時增加壹些GIF文件格式不具備的功能。可移植網絡圖形格式(PNG)的名稱來自非官方的“PNG's Not GIF”,這是壹種位圖文件存儲格式,發音為“ping”。當用PNG存儲灰度圖像時,灰度圖像的深度可多達16位,存儲彩色圖像時,彩色圖像的深度可多達48位,α通道數據也可存儲多達16位。PNG使用源自LZ77的無損數據壓縮算法。因為壓縮比高,文件小,所以壹般用在JAVA程序,或者網頁或者S60程序中。

PNG文件格式保留了GIF文件格式的以下特征:

使用顏色查找表或調色板可以支持256色的彩色圖像。

流暢性讀/寫性能

圖像文件格式允許連續讀寫圖像數據,非常適合在通信過程中生成和顯示圖像。

漸進顯示(漸進顯示)

該功能可以在通信鏈路上傳輸圖像文件的同時在終端上顯示圖像,在顯示圖像的整體輪廓後逐漸顯示圖像的細節,即先顯示低分辨率的圖像,然後逐漸提高其分辨率。

透明度(透明度)

這種性能可以使圖像的某些部分不顯示出來,可以用來創造壹些有特色的圖像。

輔助信息

此功能可用於在圖像文件中存儲壹些文本註釋信息。

獨立於計算機軟硬件環境。

使用無損壓縮。

在PNG文件格式中,應該添加以下在GIF文件格式中不可用的功能:

每個像素是48位真彩色圖像。

每個像素是16位的灰度圖像。

您可以為灰度和真彩色貼圖添加alpha通道。

添加圖像的伽瑪信息。

使用循環冗余碼(CRC)來檢測損壞的文件。

加快圖像顯示的逐次逼近顯示模式。

標準讀/寫工具包。

多個圖像可以存儲在壹個文件中。

編輯此段落

PNG文件的使用:

PNG格式圖片因其高保真、透明、文件小等特點,被廣泛應用於網頁設計和平面設計中。由於網絡通信中的帶寬限制,無法在保證圖片清晰逼真的前提下,在網頁中廣泛使用文件較大的bmp和jpg文件。gif文件雖然小,但是顏色嚴重失色,所以PNG文件從誕生之日起就開始流行。

PNG格式的圖片通常被我們用作素材。在設計過程中,不可避免地要搜索相關文件。如果是JPG格式的文件,摳圖是不可避免的,費時費力。gif格式雖然是透明的,但是它只是對壹種或幾種顏色完全透明,沒有考慮對周圍顏色的影響,所以PNG格式的文件就成了這個時候我們的最佳選擇。我們經常看到整個頁面都用同樣的PNG圖片作為背景,還有按鈕,導航欄等。都是在壹張照片上拍攝的。其實就是這個原因。原因是PNG圖片在下載過程中占用帶寬少,顏色逼真,下載壹次就可以重復使用。

編輯此段落

文件結構

PNG圖像格式文件(或數據流)由8字節PNG文件簽名字段和根據特定結構組織的三個以上的塊組成。

PNG定義了兩種類型的數據塊,壹種稱為關鍵塊(critical chunk),是標準的數據塊,另壹種稱為輔助塊(ancillary chunks),是可選的數據塊。關鍵數據塊定義了四個標準數據塊,每個PNG文件都必須包含它們,PNG讀寫軟件也必須支持這些數據塊。雖然PNG文件規範不要求PNG編解碼器對可選數據塊進行編解碼,但是規範提倡支持可選數據塊。

(1) PNG文件簽名域

8字節的PNG文件簽名字段用於識別文件是否是PNG文件。該字段的值為:

小數137 80 78 71 13 10 26 10。

十六進制數89 50 4e 47 0d 0a 1a 0a

(2)數據塊的結構

每個數據塊由四個字段組成,如表6-07所示。

表6-07 PNG文件數據塊結構

名稱字節數描述

Length(長度)4 bytes指定數據塊中數據字段的長度,其長度不得超過。

(231-1)字節

塊類型代碼4字節塊類型代碼由ASCII字母(a-z和A-Z)組成。

塊數據可變長度存儲根據塊類型代碼指定的數據。

CRC(循環冗余檢測)4字節存儲用於檢測是否有錯誤的循環冗余碼。

在表6-07中,CRC(循環冗余校驗)字段中的值是根據塊類型代碼字段和塊數據字段中的數據計算的。ISO 3309和ITU-T V.42中定義了CRC的具體算法,其值是根據以下CRC碼生成多項式計算的:

x32+x26+x23+x22+x 16+x 12+x 10+x 10+x8+x7+X5+x4+x2+x+1

編輯此段落

數據塊結構

1.關鍵數據塊

關鍵數據塊中的四個標準數據塊是:

(1)頭塊IHDR(header chunk):它包含了PNG文件中存儲的圖像數據的基本信息,它應該作為PNG數據流中的第壹塊出現,壹個PNG數據流中只能有壹個頭塊。

文件頭數據塊由13字節組成,其格式如表6-08所示。

表6-08 PNG文件頭關鍵數據塊的結構

域名的字節數的描述

Width 4字節圖像寬度,以像素為單位。

Height 4字節圖像高度,以像素為單位。

位深度1字節圖像深度:

索引彩色圖像:1、2、4或8

灰度圖像:1,2,4,8或16。

真彩色圖像:8或16

ColorType 1字節顏色類型:

0:灰度圖像,1,2,4,8或16。

2:真彩色圖像,8或16

3:索引彩色圖像,1,2,4或8 4:帶有alpha通道數據的灰色圖像,8或16。

6:帶有alpha通道數據的真彩色圖像,8或16。

壓縮方法1字節壓縮方法(LZ77導數算法)

過濾方法1字節過濾方法

隔行掃描方式1字節隔行掃描方式:0:非隔行掃描。

1: Adam7 7 (7由Adam M. Costello開發)

交叉隔行掃描方法)

(2)調色板數據塊PLTE(palette chunk):它包含與索引的彩色圖像相關的顏色轉換數據,它只與索引的彩色圖像相關,並且應該放在圖像數據塊之前。真彩色PNG數據流也可以有調色板數據塊,以便於非真彩色顯示程序使用它來量化圖像數據和顯示圖像。調色板的數據塊結構如表6-09所示。

表6-09調色板數據塊結構

域名的字節數的描述

紅色1字節0 =黑色,255 =紅色。

綠色" >;0 =黑色,255 =綠色

藍色1字節0 =黑色,255 =藍色。

調色板實際上是壹個顏色索引查找表,它的條目數可以是1 ~ 256中的壹個,每個條目有3個字節,所以調色板數據塊包含的最大字節數是768。

(3)圖像數據塊IDAT(image data chunk):它存儲實際數據,數據流可以包含連續序列中的多個圖像數據塊。

(4)圖像尾塊(Image Trailer Chunk):用於標記PNG文件或數據流已經結束,必須放在文件的末尾。

對其他數據塊的存儲順序沒有限制,除了指示數據塊開始的IHDR必須放在最前面,而指示PNG文件結尾的IEND數據塊必須放在最後。

2.輔助數據塊

PNG文件格式規範制定的10輔助數據塊有:

(1)背景色數據塊bKGD(背景色)。

(2)原色和白點(CHRM)。所謂白度是指r = g = b =最大時顯示器上產生的白度。

(3)圖像伽瑪。

(4)圖像直方圖數據塊(HIST)。

(5)物理像素尺寸。

(6)樣本sBIT(有效位(SBIT))。

(7)文本信息數據塊(文本數據)。

(8)圖像最後修改時間。

(9)圖像透明數據塊tRNS(透明度)。

(10)壓縮文本數據塊zTXt(壓縮文本數據)。

3.塊摘要

表6-10總結了關鍵數據塊、輔助數據塊和特殊用途的公共數據塊。

表6-6-10 PNG文件格式的數據塊

塊符號塊名稱多塊可選無位置限制

IHDR文件頭數據塊號號第壹塊

cHRM原色和白點數據塊在PLTE和IDAT之前嗎?

伽馬圖像的伽馬數據塊在PLTE和IDAT之前嗎?

sBIT樣本的有效位數據塊是在PLTE和IDAT之前嗎?

PLTE調色板數據塊在IDAT之前嗎?

bKGD背景色數據塊是PLTE之後IDAT之前嗎?

hIST圖像的直方圖數據塊是在PLTE之後,IDAT之前嗎?

tRNS影像的透明數據塊是在PLTE之後,IDAT之前嗎?

OFFs(私有公有* * *數據塊)是在IDAT之前嗎?

pHYs是IDAT之前的物理像素大小的數據塊嗎?

SCAL(私有公有* * *數據塊)在IDAT之前?

IDAT圖像數據塊是否與其他數據塊連續?

時間圖像的最後修改時間數據塊是否無限制。

文本文本信息數據塊是無限的。

zTXt壓縮文本數據塊沒有限制。

FRAc(專用公共* * *數據塊)是無限的。

GIFg(專用公共數據塊)是無限的。

GIFt(專用公共* * *數據塊)不限。

GIFx(專用公共* * *數據塊)不限。

IEND圖像的結束數據沒有最後壹個數據塊

編輯此段落

文本和zTXt數據塊中的標準關鍵字:

標題

圖像名稱或標題

作者

圖像作者姓名

描述

圖像描述

版權

版權聲明

創造時間

原始繪圖創建時間

軟件

用於創建圖像的軟件

放棄

棄權(投票)

警告

圖像內容警告

來源

用於創建圖像的設備

評論

各種評論

-

巴布亞新幾內亞巴布亞新幾內亞(大洋洲的壹個島國)

  • 上一篇:比較適合朗讀的散文_可以鍛煉口才喔
  • 下一篇:社區疫情防控個人優秀事跡10篇
  • copyright 2024編程學習大全網