2013-02-22 58 views
3

有一天,我想我會更多地瞭解圖像壓縮。我查看了.png及其各自的壓縮算法,我希望能夠解壓該文件,而不用其他任何庫來作爲我瞭解更多數據壓縮的方式。我很難找到關於如何在沒有第三方庫的情況下解壓縮png的信息,並且希望有人能夠指向正確的方向或簡單地解釋它。放氣:解壓縮沒有zlib的PNG(或任何其他庫)

+0

你爲什麼不看看第三方庫? – 2013-02-22 00:15:17

+3

那麼,你可以從[RFC 1951](http://tools.ietf.org/html/rfc1951)開始,它指定了zlib壓縮算法(也稱爲「DEFLATE」) – Nemo 2013-02-22 00:18:10

+0

@IanCarroll由於OP說:「沒有任何其他庫**作爲我瞭解更多關於數據壓縮**的方法。「 – junix 2013-02-22 00:21:41

回答

5

我與閱讀有關DEFLATE壓縮例如在wikipediaRFC 1951,因爲這是(至少根據wikipedia)所述的PNG壓縮的基礎啓動。還有一個關於DEFLATE可用之前的過濾的簡要說明。

+0

我已閱讀維基百科頁面。我會看看RFC頁面,並讓你知道我發現的是什麼 – 2013-02-22 00:29:36

+0

@ChaseWalden另請參閱維基百科文章的參考列表。在那裏你會發現很多與PNG相關的資源(甚至RFC和格式規範鏈接在那裏) – junix 2013-02-22 00:32:19

1

如果你想解壓放氣數據,你需要能夠找到它。所以你應該先了解一下structure of PNG files。然後看到其他答案。

+0

我已經有了一個解析器,它從頭文件中提取所有信息,然後將壓縮後的圖像數據提取到一個數組中。 – 2013-02-24 15:56:45