背景
互联网上有各种用于生成App源码图标的网站和工具。 我觉得我自己的写作更舒服,所以我花了一个小时自己写。 所有尺寸均根据互联网上给出的图标尺寸规格生成。
说明
c#写的,生成Andorid和Ios的所有图标尺寸。要是觉得尺寸不对或者命名规则不合适自己可以代码里立刻修改。代码里面备注还是很详细的。
1.修改尺寸
在Model里,把Android和Ios的尺寸分开保存在数组里面,可以根据需要调整。
public class AndroidSizes { public static int[] mdpiSizes = { 48, 32, 16, 24 }; public static int[] hdpiSizes = { 72,48,24,36 }; public static int[] xhdpiSizes = { 48, 32, 16, 24 }; public static int[] xxhdpiSizes = { 144, 96, 48, 72 }; } public class IosSizes { public static int[] icon3Sizes = { 1024, 512, 180, 114, 87, 75, 66 }; public static int[] icon2Sizes = { 1024, 512, 120, 114, 58, 75, 44 }; public static int[] icon1Sizes = { 1024, 512, 120, 57, 29, 38, 30 }; }
2.修改保存文件夹和命名规范
现在的文件夹命名规范是ios按1X、2X、3X直接保存在一个文件夹里面,按类型命名
android是按照xhdpi、hdpi、xxhdpi分别保存的,按尺寸命名
如果要修改命名可以在form的backgroundworker里面找到,这里图省事就直接逻辑写进去了。
private string CreateFolder(string file) { string filePath = Path.GetDirectoryName(file); string fileName = Path.GetFileNameWithoutExtension(file); string root = filePath + "\\" + fileName; //根目录 if (!Directory.Exists(root)) { Directory.CreateDirectory(root); } //子目录 foreach (string child in childFolders) { if (!Directory.Exists(root + "\\" + child)) { Directory.CreateDirectory(root + "\\" + child); } } return root; } private void CreateIOSThumbs(string folder, string file) { //@1x foreach (int size in Model.IosSizes.icon1Sizes) { string thumb = folder + "\\ios\\@1x" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } //@2x foreach (int size in Model.IosSizes.icon2Sizes) { string thumb = folder + "\\ios\\@2x" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } //@3x foreach (int size in Model.IosSizes.icon3Sizes) { string thumb = folder + "\\ios\\@3x" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } } private void CreateANDROIDThumbs(string folder, string file) { // "android", "android\\hdpi", "android\\mdpi", "android\\xhdpi", "android\\xxhdpi" //hdpi foreach (int size in Model.AndroidSizes.hdpiSizes) { string thumb = folder + "\\android\\hdpi\\" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } //mdpi foreach (int size in Model.AndroidSizes.mdpiSizes) { string thumb = folder + "\\android\\mdpi\\" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } //xhdpi foreach (int size in Model.AndroidSizes.xhdpiSizes) { string thumb = folder + "\\android\\xhdpi\\" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } //xxhdpi foreach (int size in Model.AndroidSizes.xxhdpiSizes) { string thumb = folder + "\\android\\xxhdpi\\" + size + ".png"; DAL.ImageConvert.MakeThumbnail(file, thumb, size, size, "HW"); } }
1.本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2.分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3.不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4.本站提供的源码、模板、插件等其他资源,都不包含技术服务请大家谅解!
5.如有链接无法下载或失效,请联系管理员处理!
6.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
2.分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3.不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4.本站提供的源码、模板、插件等其他资源,都不包含技术服务请大家谅解!
5.如有链接无法下载或失效,请联系管理员处理!
6.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!