標籤:ios icon
老早之前做IOS APP開發,為折騰一個IOS應用的Icon,用C#寫了一個簡單的IOS應用開發Icon規格自動裁剪器,但時過境遷,目前IOS裝置螢幕規格也是越來越多,一個版本就要產生好幾種規格解析度的Icon,用PS什麼的一個一個產生費勁,如果Icon有變動又得重建一次,所以還是整個程式來幹這活比較輕鬆。
思路很簡單,先匯入一張大圖(注意:這張圖必須大於等於1024*1024,因為[email protected]的規格是1024*1024),然後產生對應像素的小圖,最後儲存出來。
首先來看一下目前這些Icon規格:
//for Ad Hoc Only[email protected]:1024*1024iTunesArtwork:512*512//for App Icon[email protected]:180*180//iPhone 6 Plus (@3x)[email protected]:120*120//iPhone 6 and iPhone 5 (@2x)[email protected]:152*152//iPad and iPad mini (@2x)Icon-76.png:76*76//iPad 2 and iPad mini (@1x)Icon.png:57*57//iPhone Non-Retina (iOS 6.1 and Prior)[email protected]:114*114//iPhone Retina (iOS 6.1 and Prior)Icon-72.png:72*72//iPad Non-Retina (iOS 6.1 and Prior)[email protected]:144*144//iPad Retina (iOS 6.1 and Prior)//for Spotlight search results iconIcon-40.png:40*40//iPad Non-Retina[email protected]:80*80 //iPad Retina[email protected]:120*120 //iPhone 6 Plus//for Settings iconIcon-29.png:29*29//iPhone Non-Retina (iOS 6.1 and Prior)[email protected]:58*58//iPhone Retina (iOS 6.1 and Prior)[email protected]:87*87//iPhone 6 PlusIcon-50.png:50*50//iPad Non-Retina (iOS 6.1 and Prior)[email protected]:100*100//iPad Retina (iOS 6.1 and Prior)
這裡我使用C#來寫,主要是考慮到C#裡Bitmap類有一個GetThumbnailImage()方法很容易實現映像縮小,經過簡單的封裝實現映像裁剪的函數如下:
/// <summary> /// 擷取等比例縮放圖片的方法 /// </summary> /// <param name="imgPath">待縮放圖片路徑</param> /// <param name="savePath">縮放圖片儲存路徑</param> /// <param name="format">縮放圖片儲存的格式</param> /// <param name="scaling">要保持的寬度或高度</param> /// <returns></returns> public bool GetThumbnail(string imgPath, string savePath, ImageFormat format, int scaling) { try { using (Bitmap myBitmap = new Bitmap(imgPath)) { using (Image myThumbnail = myBitmap.GetThumbnailImage(scaling, scaling, () => { return false; }, IntPtr.Zero)) { myThumbnail.Save(savePath, format); } } return true; } catch { return false; } }
最終運行:
產生的Icon:
具體代碼可以在這下載:http://download.csdn.net/detail/wangqiuyun/7976361
轉載請註明:http://blog.csdn.net/wangqiuyun/article/details/39576293
最新 IOS應用開發Icon規格自動裁剪器(C#)