我經常使用OptiPNG或pngcrush來減小我的PNG圖像的文件大小。減少.NET中的PNG文件大小
我希望能夠在.NET應用程序中以編程方式執行此類事情。我動態生成發送到移動設備的PNG,所以我想保持文件大小。
圖像質量很重要,所以在這種情況下PNG肯定會勝過jpeg。
是否有任何現有的庫可用於執行此操作?
我經常使用OptiPNG或pngcrush來減小我的PNG圖像的文件大小。減少.NET中的PNG文件大小
我希望能夠在.NET應用程序中以編程方式執行此類事情。我動態生成發送到移動設備的PNG,所以我想保持文件大小。
圖像質量很重要,所以在這種情況下PNG肯定會勝過jpeg。
是否有任何現有的庫可用於執行此操作?
爲什麼不嘗試使用命令參數運行您在應用程序內命名的任何應用程序。或者,如果這是不可能的,使用Windows自動化。
嗯,這有點不好意思網絡服務。我正在通過網絡接收文件並調整它們的大小等。 – teedyay
退房nQuant在http://nquant.codeplex.com。這將使用完全託管的代碼將32位PNG量化爲8位,而不需要對C庫進行外殼處理。目前它只是一個量化器,並且會一直轉換爲可能會導致質量損失的8位調色板。我正在研究無損優化功能,希望很快可以使用它。
你是否在文件大小設置爲屏幕大小,或文件最小化像PNGOUT? –
文件最小化如PNGOUT。 OptiPNG和pngcrush是類似的工具。 – teedyay
我不相信那裏有任何託管庫。 OptiPNG是開源的,所以代碼的一個端口是* possible *。或者,雖然我懷疑它會產生結果,但嘗試將您的PNG加載爲位圖(這應該會削減可能會浪費空間的PNG元數據),然後再將其編碼爲PNG:http://msdn.microsoft.com/ en-us/library/system.windows.media.imaging.pngbitmapencoder.aspx –