2009-09-10 100 views
0

我有一大組我希望在頁面上顯示的縮略圖(超過200個)。我想使用CSS精靈來加載它們以最大限度地減少HTTP請求。我認爲把它們放在一個大文件中是一個壞主意,但將它們分成大約6個40-50縮略圖文件應該很好。基於顏色創建CSS精靈?

所有的縮略圖都是相當低的顏色(可以減少到256色而沒有質量下降),但總的來說,所有的縮略圖都覆蓋了更多的顏色。

那麼,有沒有簡單的方法來根據它們的顏色對它們進行分組?將每組文件放在單獨的文件夾中都很好,因爲我可以在稍後與ImageMagick或在線精靈工具縫合在一起。但在一個CSS中完成所有這一切都會很好。

更新:按顏色分組的原因:
這樣做是爲了節省更多的帶寬。如果我有10個大多藍色縮略圖,10個綠色和10個紅色,我可以將它們組合成3個圖像,每個圖像減少到256個顏色。如果混合縮略圖,則縮小至256色會使圖像質量變差。

+1

出於好奇,你爲什麼要按顏色對它們進行分組?你在做些什麼嗎? – 2009-09-10 11:23:55

+0

有一個名爲ImageSorter的程序,你可以通過谷歌搜索,然後在互聯網存檔 - 它會按照顏色直觀地排列照片,但不會執行任何gif顏色計數/優化分組。這實際上是一個有趣的軟件。 – 2009-09-10 11:53:15

+0

我認爲你在思考問題。 – nickf 2009-09-10 13:14:24

回答

0

那麼我做了一些測試,手動抓取一個「色調」的樣本,並將其與剛拍攝第一張N圖像創建的蒙太奇相比較。只有幾千字節的差異,在我找到PNGcrush後減少到大約30個字節。 Fanastic工具!

所以總之,我的瘋狂的想法已被證實。 :p

0

首先,我建議不要擔心太多,並保存爲24位PNG。看起來圖像變得越來越大,但如果縮略圖很小,你可能會發現目前正在使用的帶寬很大,只有http頭文件會消失,你可以使用它使您的圖像看起來更好。然而,如果你想讓這個過程自動化,你可以嘗試計算出平均顏色(接近這個的一種方法是將它們調整爲1x1,然後查看該像素的rgb顏色)。一旦你的圖像有顏色,轉換爲hsv並按照色調排序。然後,您可以根據該排序順序將它們捆綁在一起。我其實沒有嘗試過,但可能會產生可接受的結果。

調整打包圖像的數量也會影響輸出質量。如果每個文件放置30個圖像時它很糟糕,請嘗試25並查看它的差異。其實,想想文件數量可能會更聰明...

  • 將它們全部放到一個文件中。
  • 它看起來不好,因爲沒有足夠的顏色?
  • 添加一個額外的文件並在所有文件中均分。轉到第2步。
0

現在,這只不過是理論上的誇誇其談,但是,據我所知,動畫GIF支持每幀不同的調色板。理論上,您可以將每個圖像放置在動畫的單獨框架上(使該框架的大部分都保持透明),並將幀之間的暫停時間設置爲1ms。將動畫設置爲僅經歷一次,並且可以(可能)具有一個有效的CSS精靈,每個圖像的精簡度降低到256色。

就像我說的,理論上的blabbering。