大佬教程收集整理的这篇文章主要介绍了IOS应用开发Icon规格自动裁剪器(C#),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这几天折腾一个IOS应用的Icon,一个版本就要生成好几种规格分辨率的Icon,起初使用PS什么的一个一个生成,后来Icon改一版本又得重新生成一次,很是费劲,干脆自己写个程序来干这活得了,思路很简单,先导入一张大图(注意:这张图必须大于等于512*512),然后生成对应像素的小图,最后保存出来。
这里我使用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; } }
别的不多说了,直接上代码:
String path = "";//生成图片保存的路径 private void btnOpen_Click(object sender,EventArgs E)//打开图片按钮 { openFileDialog1.Filter = "PNG Image|*.png"; openFileDialog1.title = "打开"; openFileDialog1.MultiSELEct = false; openFileDialog1.checkFileExists = false; openFileDialog1.Filename = String.Empty; openFileDialog1.ShowDialog(); txtPath.Text = openFileDialog1.Filename; path = openFileDialog1.Filename.SubString(0,openFileDialog1.Filename.Length - openFileDialog1.SafeFilename.Length); path = path + datetiR_412_11845@e.Now.ToString("yyyymMddhhmmss") + "\\"; //txtPath.Text = path; } private void btnBuilder_Click(object sender,EventArgs E)//生成按钮 { if (txtPath.Text.Equals("") || path.Equals("")) return; if (Directory.CreateDirectory(path) != null) { bool flag = true; flag = flag && GetThumbnail(txtPath.Text,path + "iTunesArtwork",ImageFormat.Png,512);//iTunesArtwork flag = flag && GetThumbnail(txtPath.Text,path + "Icon@2x.png",114);//Application Icon for iPhone (reTina display) flag = flag && GetThumbnail(txtPath.Text,path + "Icon-72@2x.png",114);//Application Icon for the new iPad (reTina display) flag = flag && GetThumbnail(txtPath.Text,path + "Icon-small-50@2x.png",100);//SetTings/Spotlight icon for iPad flag = flag && GetThumbnail(txtPath.Text,path + "Icon-72.png",72);//Application Icon for the iPad flag = flag && GetThumbnail(txtPath.Text,path + "Icon-small@2x.png",58);//SetTings/Spotlight icon for iPhone (reTina display) flag = flag && GetThumbnail(txtPath.Text,path + "Icon.png",57);//Application Icon icon for iPhone flag = flag && GetThumbnail(txtPath.Text,path + "Icon-small-50.png",50);//SetTings/Spotlight icon for iPad flag = flag && GetThumbnail(txtPath.Text,path + "Icon-small.png",29);//SetTings/Spotlight icon for iPhone if (flag) { messageBox.Show("ICON生成完毕!","成功",messageBoxButtons.OK,messageBoxIcon.Information); System.Diagnostics.process.Start("Explorer.exe",path); } else { messageBox.Show("出错啦!","错误",messageBoxIcon.Error); } } }
运行效果图:
生成的Icon:
程序简陋不过最终实现了目的,欢迎拍砖,最后附上工具源码:http://download.csdn.net/detail/wangqiuyun/4510176
以上是大佬教程为你收集整理的IOS应用开发Icon规格自动裁剪器(C#)全部内容,希望文章能够帮你解决IOS应用开发Icon规格自动裁剪器(C#)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。