2011-09-02 53 views
2

在GIF規範,在這裏:GIF數據存儲規範問題

http://www.w3.org/Graphics/GIF/spec-gif89a.txt

我無法理解它的兩個部分:

它指定爲「LZW最小代碼尺寸」謂:

該字節決定了用於圖像數據中LZW代碼的初始位數,如附錄F所述。

  1. 這是什麼意思'用於LZW代碼的初始位數?'?
  2. LZW代碼如何在GIF環境中工作? (我理解它指的是Lempel-Ziv-Welch)。
  3. 它指的是難以捉摸的'appexdix F'在哪裏? (它不在體內)。

它還指定爲「LZW最小代碼大小」單字節後,有一個被稱爲「圖像數據」塊,其實際尺寸是不確定的,並且只是被稱爲「數據子塊」。

  • 這是什麼意思'數據子塊'?
  • 如何計算出數據子塊的大小?
  • 這是否涉及到LZW代碼?如果是這樣,我該如何解讀?

對不起所有的問題。感謝您的時間。

作爲一個側面說明:即使是部分答案或任何問題的答案將不勝感激。

回答

2
  1. GIF適用LZW算法與Wikipedia LZW描述碼作爲 的變量(增加)的大小。 「初始位數」是代碼的初始大小 。

  2. 這在您參考的文檔中有描述。 像素的顏色代碼列表是LZW壓縮的(段落「a」就在您引用的部分的正上方)。

  3. 這是有文件中(第30頁;-)接近尾聲時,只需搜索 「可變長度編碼LZW壓縮」)

  4. 「數據分塊」是實際圖像數據的塊數爲255(或更少字節)。 也許由圖像數據和擴展塊中使用的

鏈接的列表由一系列子塊組成,每個子塊開始與給在子的隨後的數據字節的數目的字節 - 塊(1到255),由空子塊(一個0字節)終止的序列。 [Wikipedia GIF]

  1. 「我如何制定出子數據塊的大小?」往上看。它是每個塊的第一個字節 。

  2. 見上。

+0

非常感謝。 – SSight3