2010-03-18 29 views
4

經過更多的調查後,我得出結論(可能是錯誤的),BRCC32在創建資源文件時遇到問題具有不同顏色深度的ICO圖像。D2007(2007年12月更新)BRCC32,ICO,RES和顏色深度問題/說明

具體來說,如果ICO文件中的圖標同時具有8位256色和24位XP(alpha)圖像,那麼BRCC32將生成一個包含這些圖像的RES文件,但同時包含8位和24位圖像將被標記爲24位。問題是那些希望顯示24位圖像的系統,即那些能夠顯示超過256色的圖像,將會選擇符合該要求的第一幅圖像。就我而言,至少,這恰好是「僞」24位256色圖標。因此,您應該在桌面上獲得較低分辨率的圖標。

使用HeavenTools的「資源調諧器」,可以清楚地看到「組圖標」信息爲8位圖像保存24位描述符。

兩種方式爲我。刪除256色ico圖像,導致RES文件中只有「正確的」24位XP Alpha圖像。缺點是你沒有256個顏色圖標,如果你需要它們。更好的方法是使用http://www.godevtool.com/#rc的GoRC.exe(資源編譯器)作爲BRCC32的替代方案。這正確處理了8位和24位圖像的組合。結果是窗口可以選擇正確的圖標,適合系統的顯示分辨率。

作爲一個側面問題,我也看到BRCC32似乎無法處理PNG壓縮圖像(您會收到錯誤15 分配失敗)。它正在尋找我遇到GoRC的這個錯誤(通過Jan Wichers博客)。

有沒有人有類似的經歷證實我的任何發現,或者我錯過了一些關鍵知識?我的後續會是,這是在D2009/D2010的問題?

Paul。

+0

我從來沒有見過那個特定的問題,所以我無法添加答案,但我聽說它應該與Vista風格的圖標(32位)有關。這可能與您的PNG問題有關。 –

+0

是的,這是我原來的想法,這是「分配失敗」的地方。我還使用了「IDE修復包」,因爲我知道IDE可能會混淆256 * 256個Vista風格的圖標。但是,我繼續前進並移除了vista樣式的PNG 256 * 256圖標,並繼續進行此操作。對我來說,它看起來像資源編譯器問題,因爲免費軟件GoRC實用程序處理它就好了。 – Paul

回答

1

我最近有同樣的問題 - 如果在同一圖標中有2​​56色和32位彩色子圖標,BRCC32資源編譯器肯定會感到困惑。經過大量調查後,似乎將圖標組標題寫入.res文件時,它始終將32位值置入,忽略實際顏色深度。

我不得不生產一個應用程序來解決這個問題,我已經在下面附上源代碼。銘記這是一個速戰速決我做這使得這是怎麼回事在資源文件中發現了一些假設,我想這可能幫助你:

​​

+0

謝謝基蘭。自從我最初發布這個問題以來,我一直在使用GoRC,併爲我完成這項工作。我會保留你的ResFix作爲解決方法,但編譯器會讓我失望! – Paul