常用TGA讀取主要分為壓縮和非壓縮的格式,他們又分為24位和32位讀取,切記 TGA格式采用BGR或BGRA逆OPenGL的格式,所以我們用OPenGL畫(huà)圖的時(shí)候要轉(zhuǎn)換成為RGB或RGBA的格式,將一三位互換不全面的原因是 TGA 包含了超過(guò)六種圖像文件格式,而其中的幾種較為常用。
我選擇了我現(xiàn)在使用的格式并在本文中加以詳解。 如果你需要本文中沒(méi)有包含的格式說(shuō)明,你可以與你的
truevision 代理商聯(lián)系。
對(duì)所有的 TGA 格式的文件而言,其第三字節(jié)(二進(jìn)制整數(shù))用來(lái)區(qū)別各種不同的
TGA 文件。下面列出了該字節(jié)表明的對(duì)應(yīng)文件類(lèi)型:
0 - 文件中沒(méi)有圖像數(shù)據(jù)
1 - 未壓縮的,顏色表圖像
2 - 未壓縮的,rgb 圖像
3 - 未壓縮的,黑白圖像
9 - runlength 編碼的顏色表圖像
10 - runlength 編碼的 rgb 圖像
11 - 壓縮的,黑白圖像
32 - 使用 huffman,delta 和 runlength 編碼的顏色表圖像
33 - 使用 huffman,delta 和 runlength 編碼的顏色映射圖像,4
趟四叉樹(shù)類(lèi)型處理。
本文僅僅描述對(duì)應(yīng) 1,2,9 和 10 的文件格式。 代碼里則處理了2,3 10的情況
----------------------------------------------------------------------------
|數(shù)據(jù)類(lèi)型 1: 顏色表(color-mapped)圖像
|--------|--------|---------------------------------------------------------
| 偏移 | 長(zhǎng)度 | 描述
|--------|--------|---------------------------------------------------------
| 0 | 1 | 圖像信息字段(見(jiàn)本子表的后面)的字符數(shù)
| | | 本字段是1字節(jié)無(wú)符號(hào)整型,指出了圖像格式區(qū)別字段長(zhǎng)度
| | | 其取值范圍是 0 到 255 ,當(dāng)它為 0 時(shí)表示沒(méi)有圖像的
| | | 信息字段。
|--------|--------|---------------------------------------------------------
| 1 | 1 | 顏色表的類(lèi)型
| | | 該字段為表示對(duì)應(yīng)格式 1 的圖像而包含一個(gè)二進(jìn)制1
|--------|--------|---------------------------------------------------------
| 2 | 1 | 圖像類(lèi)型碼
| | | 該字段總為 1 , 這也是此類(lèi)型為格式1的原因
|--------|--------|---------------------------------------------------------
| 3 | 5 | 顏色表規(guī)格
| | |
| 3 | 2 | 顏色標(biāo)首址
| | | 顏色表首元表項(xiàng)的整型(低位-高位)索引
| 5 | 2 | 顏色表的長(zhǎng)度
| | | 顏色表的表項(xiàng)總數(shù),整型(低位-高位)
| 7 | 1 | 顏色表表項(xiàng)的位(bit)數(shù)
| | | 16代表16位TGA ,24代表24位TGA 32代表32位TGA
|--------|--------|---------------------------------------------------------
| 8 | 10 | 圖像規(guī)格
| | |
| 8 | 2 | 圖像 x 坐標(biāo)起始位置
| | | 圖像左下角 x 坐標(biāo)的整型(低位-高位)值
| | |
| 10 | 2 | 圖像 y 坐標(biāo)起始位置
| | | 圖像左下角 y 坐標(biāo)的整型(低位-高位)值
| 12 | 2 | 圖像寬度
| | | 以像素為單位,圖像寬度的整型(低位-高位)值
| 14 | 2 | 圖像高度
| | | 以像素為單位,圖像高度的整型(低位-高位)值
| 16 | 1 | 圖像每像素存儲(chǔ)占用位(bit)數(shù)
| | |
| 17 | 1 | 圖像描述符字節(jié)
| | | bits 3-0 - 每像素的屬性位(bit)數(shù)
| | |
| | | bit 4 - 保留,必須為 0
| | | bit 5 - 屏幕起始位置標(biāo)志
| | | 0 = 原點(diǎn)在左下角
| | | 1 = 原點(diǎn)在左上角
| | | truevision 圖像必須為 0
| | | bits 7-6 - 交叉數(shù)據(jù)存儲(chǔ)標(biāo)志
| | | 00 = 無(wú)交叉
| | | 01 = 兩路奇/偶交叉
| | | 10 = 四路交叉
| | | 11 = 保留
| | | 這一項(xiàng)應(yīng)該設(shè)為 0,不要問(wèn)我為什么
|--------|--------|---------------------------------------------------------
| 18 | 可變 | 圖像信息字段
| | | 包含一個(gè)自由格式的,長(zhǎng)度是圖像記錄塊偏移0處的字節(jié)中的
| | | 值。它常常被忽略(即偏移 0 處值為 0),注意其最大可以
| | | 含有 255個(gè)字符。如果需要存儲(chǔ)更多信息,可以放在圖像數(shù)據(jù)
| | | 之后
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 顏色表數(shù)據(jù)
| | | 起始位置由前一個(gè)字段的大小決定;其長(zhǎng)度由單項(xiàng)數(shù)據(jù)大小
| | | 和數(shù)據(jù)項(xiàng)數(shù)目決定(在前面相應(yīng)的說(shuō)明字段中給出)
| | | 每項(xiàng)是 2 字節(jié),3 字節(jié)或 4字節(jié),字節(jié)中沒(méi)有使用的位(bit)
| | | 被認(rèn)為是屬性位。
| | | 4 字節(jié)表項(xiàng)中,字節(jié) 1 表示 BLUE,字節(jié) 2 表示 GREEN,
| | | 字節(jié) 3 表示 RED,字節(jié) 4 表示屬性
| | | 3 字節(jié)表項(xiàng)中各字節(jié)依次對(duì)應(yīng) BLUE,GREEN,RED
| | | 2 字節(jié)表項(xiàng)中,兩個(gè)字節(jié)分解成如下形式:
| | | arrrrrgg gggbbbbb
| | | 但是,由于低位在前,高位在后的存儲(chǔ)順序,從文件中讀出表項(xiàng)
| | | 時(shí),將先讀入 gggbbbbb 而后讀入 arrrrrgg ;a 表示屬性位
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 圖像數(shù)據(jù)字段
| | | 該字段給出了 (高度)x(寬度)個(gè)顏色表項(xiàng)索引,每個(gè)索引
| | | 以整數(shù)個(gè)字節(jié)的形式存儲(chǔ)(典型的例子如 1 或 2 個(gè)字節(jié)
| | | 所有的數(shù)據(jù)都沒(méi)有符號(hào),對(duì)于2-字節(jié)表項(xiàng)而言,低位字節(jié)是
| | | 先存儲(chǔ)的。
----------------------------------------------------------------------------
----------------------------------------------------------------------------
|數(shù)據(jù)類(lèi)型 2: 無(wú)顏色表 rgb 圖像
|--------|--------|---------------------------------------------------------
| 偏移 | 長(zhǎng)度 | 描述
|--------|--------|---------------------------------------------------------
| 0 | 1 | 圖像信息字段( 見(jiàn)本子表的后面 )的字符數(shù)
| | | 本字段是 1 字節(jié)無(wú)符號(hào)整型,指出了圖像格式區(qū)別字段長(zhǎng)度
| | | 其取值范圍是 0 到 255 ,當(dāng)它為 0 時(shí)表示沒(méi)有圖像的
| | | 信息字段。
|--------|--------|---------------------------------------------------------
| 1 | 1 | 顏色表類(lèi)型
| | | 該字段的內(nèi)容或者為 0 或者為 1;0 表示沒(méi)有顏色表,1表示
| | | 顏色表存在。由于本格式是無(wú)顏色表的,因此此項(xiàng)通常被忽略
| | | 提示:如果置為 1(targa繪畫(huà)程序)將把邊框顏色設(shè)置為映射
| | | 中的第一種顏色
|--------|--------|---------------------------------------------------------
| 2 | 1 | 圖像類(lèi)型碼
| | |
| | | 該字段總為 2 , 這也是此類(lèi)型為格式 2 的原因
|--------|--------|---------------------------------------------------------
| 3 | 5 | 顏色表規(guī)格
| | |
| | | 如果顏色表類(lèi)型字段為 0 則被忽略;否則描述如下
| | |
| 3 | 2 | 顏色表首址
| | | 顏色表首元入口的整型(低位-高位)索引
| | |
| 5 | 2 | 顏色表的長(zhǎng)度
| | | 顏色表的表項(xiàng)總數(shù),整型(低位-高位)
| | |
| 7 | 1 | 顏色表表項(xiàng)的位(bit)數(shù)
| | | 16代表16位TGA ,24 代表 24 位 TGA ,32 代表 32 位 TGA
| | |
|--------|--------|---------------------------------------------------------
| 8 | 10 | 圖像規(guī)格
| | |
| 8 | 2 | 圖像 x 坐標(biāo)起始位置
| | | 圖像左下角 x 坐標(biāo)的整型(低位-高位)值
| 10 | 2 | 圖像 y 坐標(biāo)起始位置
| | | 圖像左下角 y 坐標(biāo)的整型(低位-高位)值
| 12 | 2 | 圖像寬度
| | | 以像素為單位,圖像寬度的整型(低位-高位)值
| 14 | 2 | 圖像高度
| | | 以像素為單位,圖像高度的整型(低位-高位)值
| 16 | 1 | 圖像每像素存儲(chǔ)占用位(bit)數(shù)
| | | 它的值為16,24 或 32 等等決定了該圖像是 TGA 16,TGA24
| | | TGA 32 等等
| 17 | 1 | 圖像描述符字節(jié)
| | | bits 3-0 - 每像素對(duì)應(yīng)的屬性位的位數(shù);對(duì)于 TGA 16,
| | | 該值為 0 或 1,對(duì)于 TGA 24,該值為 0,
| | | 對(duì)于 TGA 32,該值為 8
| | | bit 4 - 保留,必須為 0
| | | bit 5 - 屏幕起始位置標(biāo)志
| | | 0 = 原點(diǎn)在左下角
| | | 1 = 原點(diǎn)在左上角
| | | 對(duì)于 truevision 圖像必須為 0
| | | bits 7-6 - 交叉數(shù)據(jù)存儲(chǔ)標(biāo)志
| | | 00 = 無(wú)交叉
| | | 01 = 兩路奇/偶交叉
| | | 10 = 四路交叉
| | | 11 = 保留
|--------|--------|---------------------------------------------------------
| 18 | 可變 | 圖像信息字段
| | | 包含一個(gè)自由格式的,長(zhǎng)度是圖像記錄塊偏移 0處的字節(jié)中的
| | | 值。它常常被忽略(即偏移 0 處值為 0),注意其最大可以
| | | 含有 255個(gè)字符。如果需要存儲(chǔ)更多信息,可以放在圖像數(shù)據(jù)
| | | 之后
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 顏色表數(shù)據(jù)
| | |
| | | 如果顏色表類(lèi)型為 0,則該域不存在,否則越過(guò)該域直接讀取
| | | 圖像顏色表規(guī)格中描述了每項(xiàng)的字節(jié)數(shù),為 2,3,4 之一
| | |
| | |
| | |
| | |
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 圖像數(shù)據(jù)域
| | | 這里存儲(chǔ)了(寬度)x(高度)個(gè)像素,每個(gè)像素中的 rgb色值
| | | 該色值包含整數(shù)個(gè)字節(jié)
| | | 3 字節(jié)表項(xiàng)中各字節(jié)依次對(duì)應(yīng)BLUE,GREEN,RED
| | | 2 字節(jié)表項(xiàng)中,兩個(gè)字節(jié)分解成如下形式:
| | | arrrrrgg gggbbbbb
| | | 但是,由于低位在前,高位在后的存儲(chǔ)順序,從文件中讀出表項(xiàng)
| | | 時(shí),將先讀入 gggbbbbb 而后讀入 arrrrrgg ;a 表示屬性位
| | | 4 字節(jié)表項(xiàng)包含了分別代表 blue,green,red 及屬性的四個(gè)
| | | 字節(jié);(由于硬件上的原因)有的時(shí)候 TGA 24類(lèi)型的圖像也象
| | | TGA 32 類(lèi)型的圖像那樣存儲(chǔ)
----------------------------------------------------------------------------
----------------------------------------------------------------------------
|數(shù)據(jù)類(lèi)型 9: runlength 編碼,帶顏色表的圖像
|--------|--------|---------------------------------------------------------
| 偏移 | 長(zhǎng)度 | 描述
|--------|--------|---------------------------------------------------------
| 0 | 1 | 圖像信息字段(見(jiàn)本子表的后面)的字符數(shù)
| | | 本字段是 1 字節(jié)無(wú)符號(hào)整型,指出了圖像格式區(qū)別字段長(zhǎng)度
| | | 其取值范圍是 0 到 255 ,當(dāng)它為 0 時(shí)表示沒(méi)有圖像的
| | | 信息字段。
|--------|--------|---------------------------------------------------------
| 1 | 1 | 顏色表的類(lèi)型
| | | 該字段為表示對(duì)應(yīng)帶顏色表的圖像而總為 1
|--------|--------|---------------------------------------------------------
| 2 | 1 | 圖像類(lèi)型碼
| | | 本類(lèi)型該字段為二進(jìn)制 9
|--------|--------|---------------------------------------------------------
| 3 | 5 | 顏色表規(guī)格
| | | 如果顏色表類(lèi)型字段為 0 則被忽略;否則描述如下
| 3 | 2 | 顏色表首址
| | | 顏色表首元入口的整型(低位-高位)索引
| 5 | 2 | 顏色表的長(zhǎng)度
| | | 顏色表的表項(xiàng)總數(shù),整型(低位-高位)
| 7 | 1 | 顏色表表項(xiàng)的位(bit)數(shù)
| | | 16 代表 16 位 TGA ,24 代表24位 TGA 32代表32 位TGA
|--------|--------|---------------------------------------------------------
| 8 | 10 | 圖像規(guī)格
| 8 | 2 | 圖像 x 坐標(biāo)起始位置
| | | 圖像左下角 x 坐標(biāo)的整型(低位-高位)值
| 10 | 2 | 圖像 y坐標(biāo)起始位置
| | | 圖像左下角 y 坐標(biāo)的整型(低位-高位)值
| 12 | 2 | 圖像寬度
| | | 以像素為單位,圖像寬度的整型(低位-高位)值
| 14 | 2 | 圖像高度
| | | 以像素為單位,圖像高度的整型(低位-高位)值
| 16 | 1 | 圖像每像素存儲(chǔ)占用位(bit)數(shù)
| 17 | 1 | 圖像描述符字節(jié)
| | | bits 3-0 - 每像素的屬性位(bit)數(shù)
| | | bit 4 - 保留,必須為 0
| | | bit 5 - 屏幕起始位置標(biāo)志
| | | 0 = 原點(diǎn)在左下角
| | | 1 = 原點(diǎn)在左上角
| | | truevision 圖像必須為 0
| | | bits 7-6 - 交叉數(shù)據(jù)存儲(chǔ)標(biāo)志
| | | 00 = 無(wú)交叉
| | | 01 = 兩路奇/偶交叉
| | | 10 = 四路交叉
| | | 11 = 保留
|--------|--------|---------------------------------------------------------
| 18 | 可變 | 圖像信息字段
| | | 包含一個(gè)自由格式的,長(zhǎng)度是圖像記錄塊偏移 0 處的字節(jié)中的
| | | 值。它常常被忽略(即偏移 0 處值為 0 ),注意其最大可以
| | | 含有 255 個(gè)字符。如果需要存儲(chǔ)更多信息,可以放在圖像數(shù)據(jù)
| | | 之后
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 顏色表數(shù)據(jù)
| | | 起始位置由前一個(gè)字段的大小決定;其長(zhǎng)度由單項(xiàng)數(shù)據(jù)大小
| | | 和數(shù)據(jù)項(xiàng)數(shù)目決定(在前面相應(yīng)的說(shuō)明字段中給出)
| | | 每項(xiàng)是 2 字節(jié),3 字節(jié)或 4字節(jié),字節(jié)中沒(méi)有使用的位(bit)
| | | 被認(rèn)為是屬性位。
| | | 4 字節(jié)表項(xiàng)中,字節(jié) 1 表示 BLUE,字節(jié) 2 表示 GREEN,
| | | 字節(jié) 3 表示 RED,字節(jié) 4 表示屬性
| | | 3 字節(jié)表項(xiàng)中各字節(jié)依次對(duì)應(yīng)BLUE,GREEN,RED
| | | 2 字節(jié)表項(xiàng)中,兩個(gè)字節(jié)分解成如下形式:
| | | arrrrrgg gggbbbbb
| | | 但是,由于低位在前,高位在后的存儲(chǔ)順序,從文件中讀出表項(xiàng)
| | | 時(shí),將先讀入 gggbbbbb 而后讀入 arrrrrgg ;a表示屬性位
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 圖像數(shù)據(jù)域
| | | 本區(qū)域給出了(寬度)x(高度)個(gè)顏色表索引這些索引存放
| | | 在數(shù)據(jù)包中;有兩中類(lèi)型的數(shù)據(jù)包:run-length 數(shù)據(jù)包,
| | | 以及未加工的數(shù)據(jù)包,每種類(lèi)型的數(shù)據(jù)包含有1-字節(jié)的頭信息,
| | | (其中指出了數(shù)據(jù)包類(lèi)型和數(shù)目),其后是可變長(zhǎng)度的數(shù)據(jù)域
| | | 頭信息中最高位為 1 表示 run-length 類(lèi)型的數(shù)據(jù)包,當(dāng)
| | | 它為 0 時(shí),表示未加工的數(shù)據(jù)包
| | | 對(duì)于 run-length 數(shù)據(jù)包,頭信息含義如下
| | | __________________________________________________
| | | | 1 bit | 7 位的重復(fù)記數(shù)減一 |
| | | | id | 由于 7 位表示的最大值為 127,故最大 |
| | | | | 的運(yùn)行大小為 128,(譯注:原文為 |
| | | | | the largest run size) |
| | | |-------|----------------------------------------|
| | | | 1 | c c c c c c c |
| | | --------------------------------------------------
| | | 對(duì)于未加工數(shù)據(jù)包,頭信息的含義如下
| | | __________________________________________________
| | | | 1 bit | 7 位的像素個(gè)數(shù)減一 |
| | | | id | 由于 7 位表示的最大值為 127,故該 |
| | | | | 類(lèi)型的一個(gè)數(shù)據(jù)包中像素個(gè)數(shù)不能大于 |
| | | | | 128 |
| | | |-------|----------------------------------------|
| | | | 0 | n n n n n n n |
| | | --------------------------------------------------
| | | 對(duì)于 run-length 數(shù)據(jù)包而言,頭信息之后是一個(gè)簡(jiǎn)單的
| | | 顏色索引,且假定該索引被重復(fù)頭信息中低 7 位表示的次數(shù)
| | | run-length 數(shù)據(jù)包也許會(huì)跨越掃描線
| | | (掃描線起始于某行結(jié)束于下一行)
| | |
| | | 對(duì)于未加工的數(shù)據(jù)包,頭信息之后是顏色索引(數(shù)值由頭信息
| | | 給出)該類(lèi)型的數(shù)據(jù)包也可能跨越掃描線
----------------------------------------------------------------------------
----------------------------------------------------------------------------
|數(shù)據(jù)類(lèi)型 10:run length 編碼,rgb 圖像
|--------|--------|---------------------------------------------------------
| 偏移 | 長(zhǎng)度 | 描述
|--------|--------|---------------------------------------------------------
| 0 | 1 | 圖像信息字段(見(jiàn)本子表的后面)的字符數(shù)
| | | 本字段是 1 字節(jié)無(wú)符號(hào)整型,指出了圖像格式區(qū)別字段長(zhǎng)度
| | | 其取值范圍是 0 到 255 ,當(dāng)它為 0 時(shí)表示沒(méi)有圖像的
| | | 信息字段。
|--------|--------|---------------------------------------------------------
| 1 | 1 | 該字段的內(nèi)容或者為 0 或者為 1;0 表示沒(méi)有顏色表,1表示
| | | 顏色表存在。由于本格式是無(wú)顏色表的,因此此項(xiàng)通常被忽略
| | | 提示:如果置為 1(targa繪畫(huà)程序)將把邊框顏色設(shè)置為映射
| | | 中的第一種顏色
|--------|--------|---------------------------------------------------------
| 2 | 1 | 圖像類(lèi)型代碼
| | | 本類(lèi)型該字段為二進(jìn)制 10
|--------|--------|---------------------------------------------------------
| 3 | 5 | 顏色表規(guī)格
| | | 如果顏色表類(lèi)型字段為 0 則被忽略;否則描述如下
| 3 | 2 | 顏色表首址
| | | 顏色表首元入口的整型(低位-高位)索引
| 5 | 2 | 顏色表的長(zhǎng)度
| | | 顏色表的表項(xiàng)總數(shù),整型(低位-高位)
| 7 | 1 | 顏色表表項(xiàng)的位(bit)數(shù)
| | | 16代表16位 TGA ,24 代表 24 位 TGA ,32 代表 32 位TGA
|--------|--------|---------------------------------------------------------
| 8 | 10 | 圖像規(guī)格
| 8 | 2 | 圖像 x 坐標(biāo)起始位置
| | | 圖像左下角 x 坐標(biāo)的整型(低位-高位)值
| 10 | 2 | 圖像 y 坐標(biāo)起始位置
| | | 圖像左下角 y 坐標(biāo)的整型(低位-高位)值
| 12 | 2 | 圖像寬度
| | | 以像素為單位,圖像寬度的整型(低位-高位)值
| 14 | 2 | 圖像高度
| | | 以像素為單位,圖像高度的整型(低位-高位)值
| 16 | 1 | 圖像每像素存儲(chǔ)占用位(bit)數(shù)
| 17 | 1 | 圖像描述符字節(jié)
| | | bits 3-0 - 每像素的屬性位(bit)數(shù)
| | | bit 4 - 保留,必須為 0
| | | bit 5 - 屏幕起始位置標(biāo)志
| | | 0 = 原點(diǎn)在左下角
| | | 1 = 原點(diǎn)在左上角
| | | truevision 圖像必須為 0
| | | bits 7-6 - 交叉數(shù)據(jù)存儲(chǔ)標(biāo)志
| | | 00 = 無(wú)交叉
| | | 01 = 兩路奇/偶交叉
| | | 10 = 四路交叉
| | | 11 = 保留
|--------|--------|---------------------------------------------------------
| 18 | 可變 | 圖像信息字段
| | | 包含一個(gè)自由格式的,長(zhǎng)度是圖像記錄塊偏移 0 處的字節(jié)中的
| | | 值。它常常被忽略(即偏移 0 處值為 0 ),注意其最大可以
| | | 含有 255個(gè)字符。如果需要存儲(chǔ)更多信息,可以放在圖像數(shù)據(jù)
| | | 之后
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 顏色表數(shù)據(jù)
| | | 如果顏色表類(lèi)型為 0,則該域不存在,否則越過(guò)該域直接讀取
| | | 圖像顏色表規(guī)格中描述了每項(xiàng)的字節(jié)數(shù),為 2,3,4 之一
|--------|--------|---------------------------------------------------------
| 可變 | 可變 | 圖像數(shù)據(jù)域
| | | 本區(qū)域給出了(寬度)x(高度)個(gè)顏色表索引這些索引存放
| | | 在數(shù)據(jù)包中;有兩中類(lèi)型的數(shù)據(jù)包:run-length 數(shù)據(jù)包,
| | | 以及未加工的數(shù)據(jù)包,每種類(lèi)型的數(shù)據(jù)包含有1-字節(jié)的頭信息,
| | | (其中指出了數(shù)據(jù)包類(lèi)型和數(shù)目),其后是可變長(zhǎng)度的數(shù)據(jù)域
| | | 頭信息中最高位為 1 表示 run-length 類(lèi)型的數(shù)據(jù)包,當(dāng)
| | | 它為 0 時(shí),表示未加工的數(shù)據(jù)包
| | | 對(duì)于 run-length 數(shù)據(jù)包,頭信息含義如下
| | | __________________________________________________
| | | | 1 bit | 7 位的重復(fù)記數(shù)減一 |
| | | | id | 由于 7 位表示的最大值為 127,故最大 |
| | | | | 的運(yùn)行大小為 128,(譯注:原文為 |
| | | | | the largest run size) |
| | | |-------|----------------------------------------|
| | | | 1 | c c c c c c c |
| | | --------------------------------------------------
| | |
| | | 對(duì)于未加工數(shù)據(jù)包,頭信息的含義如下
| | | __________________________________________________
| | | | 1 bit | 7 位的像素個(gè)數(shù)減一 |
| | | | id | 由于 7 位表示的最大值為 127,故該 |
| | | | | 類(lèi)型的一個(gè)數(shù)據(jù)包中像素個(gè)數(shù)不能大于 |
| | | | | 128 |
| | | |-------|----------------------------------------|
| | | | 0 | n n n n n n n |
| | | --------------------------------------------------
| | |
| | | 對(duì)于 run length 數(shù)據(jù)包,頭信息之后是一個(gè)簡(jiǎn)單顏色值,
| | | 且假定該值重復(fù)的次數(shù)為頭信息中記錄的數(shù)
| | | run-length 數(shù)據(jù)包也許會(huì)跨越掃描線
| | | (掃描線起始于某行結(jié)束于下一行)
| | | 對(duì)于未加工數(shù)據(jù)包,頭信息之后是顏色值(數(shù)目由頭信息指出)
| | | 顏色表項(xiàng)自身有 2-字節(jié),3-字節(jié)或 4-字節(jié)幾種大小(分別
| | | 對(duì)應(yīng) TGA 16,TGA 24 和 TGA 32)形式如下:
| | | 3 字節(jié)表項(xiàng)中各字節(jié)依次對(duì)應(yīng)BLUE,GREEN,RED
| | | 2 字節(jié)表項(xiàng)中,兩個(gè)字節(jié)分解成如下形式:
| | | arrrrrgg gggbbbbb
| | |但是,由于低位在前,高位在后的存儲(chǔ)順序,從文件中讀出表項(xiàng)
| | | 時(shí),將先讀入 gggbbbbb 而后讀入 arrrrrgg ;a 表示屬性位
| | |
| | | 4 字節(jié)表項(xiàng)包含了分別代表 blue,green,red 及屬性的四個(gè)
| | | 字節(jié);(由于硬件上的原因)有的時(shí)候 TGA 24類(lèi)型的圖像也象
| | | TGA 32 類(lèi)型的圖像那樣存儲(chǔ)
----------------------------------------------------------------------------
posted on 2010-05-26 09:40
風(fēng)輕云淡 閱讀(1870)
評(píng)論(0) 編輯 收藏 引用 所屬分類(lèi):
圖像讀取