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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于DNF的多媒体包NPK文件的那些事儿(6) - IMGV4

發布時間:2023/12/9 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于DNF的多媒体包NPK文件的那些事儿(6) - IMGV4 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

IMGV4是IMG結構的第四個版本(筆者至今不知道為什么沒有IMGV3)。IMGV4采用RGBA索引形式存儲數據,廣泛用于時裝圖像的存儲,目前國服絕大部分的時裝文件均使用IMGV4存儲,韓服大部分時裝文件則逐漸被IMGV6代替。

IMGV4在文件的前端帶有一個調色板信息,存儲了IMG內所有圖像所使用的顏色的個數以及顏色的RGBA數值,而圖像數據則存儲索引(即由4字節變為1字節),因此IMGV4相比具有相同效果的IMGV2來說,圖像信息存儲空間減少了75%,但多了調色板所占用的空間,在時裝等這類需要顏色信息較少的IMG文件中,存儲空間和讀取速度都會變小;對于顏色較為復雜尤其類似于背景這樣的點陣圖,由于調色板數據較大,因此不適用于IMGV4格式。此外,IMGV4的特點是對顏色進行操作極為容易,對形狀操作也較為容易,但是插入具有不同顏色的貼圖時需要額外擴充調色板,因此較麻煩。


IMGV4的結構如下表所示:

文件頭

20字節字符串(注意空格)“Neople Img File”外加“\0”

索引表大小

4字節,索引表所占空間(注意不包含顏色板的空間)。

保留

4字節,為0。

版本號

4字節,IMGV4文件結構中的版本號為4。

索引表數目

4字節,索引表的表項(包括指向型和圖片型)

調色板數據

首4字節為調色板所包含的顏色數目,之后的4×顏色數目個字節則為具體數據,詳見下文“調色板”。

索引表

索引表項1

由若干個索引項構成。索引項包括2種,指向型和圖片型。圖片型存儲對應圖片的各種信息,指向型只存儲一個數據,即所指向的圖片的幀號。

?

圖片型索引項(36字節)

顏色系統

4字節,圖像所使用的顏色系統,

IMGV4這里只有一種類型0x0E,表示索引顏色。

壓縮狀態

4字節,圖像所采用的壓縮方式,其值含義如下:

0x05(圖像數據未壓縮)

0x06(圖像數據經ZLIB壓縮)

圖像寬

4字節

圖像高

4字節

圖像大小

4字節,圖像數據所占空間

x坐標

4字節,圖像起始繪制點x坐標

y坐標

4字節,圖像起始繪制點y坐標

幀域寬

4字節,用途不大,基準用

幀域高

4字節,用途不大,基準用

指向型索引項(2字節)

類型

4字節,固定為0x11。

可以用作區分指向型和圖片型數據的標準。

指向幀號

4字節,指向的幀號。

?

?

索引表項2

索引表項3

索引表項4

……

貼圖數據

圖像數據塊1

由首尾相接的圖像數據塊構成。

由于大部分圖像數據由ZLIB進行壓縮,因此經常以“0x78 0x9C”數據開頭(但不可以其為標準作為圖像數據塊的起始點),解壓后是索引數據,根據索引在調色板中查找對應的顏色。

指向型索引項不對應任何圖像數據(即對應的圖像數據大小為0)。

圖像數據塊2

圖像數據塊3

……

IMGV4的調色板數據使用的ABGR8888方式存儲,即在數據流中的順序為R、G、B、A,這點與IMGV2里的ARGB8888顏色存儲方式是有區別的,相當于其中的紅藍通道互換,因此處理V4中的顏色數據時不能沿用IMGV2的處理方式。此外,由于圖像數據里一個像素只使用一個字節存儲,因此調色板中的顏色數目不能超過256,如果去掉需要表示透明的顏色項(在大部分調色板中位于第一個顏色項即0x00000000)的話,那顏色數目就不能超過255個。

當對應的索引表中的壓縮方式為ZLIB壓縮時,圖像數據使用ZLIB壓縮,同V2一樣,不在贅述。使用ZLIB解壓后得到的數據則是索引數據,像素的顏色可以通過在調色板中進行查找,由于大部分的IMG文件調色板中第一個顏色就是表示透明的像素,因此解壓后的圖像數據中的00經常表示透明像素了。

IMGV4的顏色調整是極為容易的,只要對IMGV4的調色板數據進行編輯和修改(但不能增加或刪除)即可,無需對后續的圖像數據進行任何分析;若不改變顏色,對形狀修改教IMGV2比也容易,因為無需考慮顏色問題,僅修改索引數據就可以了。

下圖是一個比較簡單的IMGV4顏色編輯工具:



IMGV4最大的問題是插入圖片數據,如果插入的圖片數據存在IMG文件中調色板所不存在的顏色時,就要擴充顏色板;而此時當顏色板顏色項數已經超過了256,則該IMG文件就無法滿足需求了,因此在對IMG進行自由的插入和刪除時,使用IMGV2更為穩妥。而對于帶有漸變或者噪音的圖像,使用IMGV4會極大地增加調色板的數據以致性能下降甚至丟失數據,因此也不適合使用IMGV4進行存儲。

總結

以上是生活随笔為你收集整理的关于DNF的多媒体包NPK文件的那些事儿(6) - IMGV4的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。