flutter ios 图标处理

发布时间:2022-02-14 14:46:01

flutter产生的图标不是我们产品的图标,需要我们自已制作图标。以前我的方式是 制作完图标,按大小与名称一个一个保存太费事。 于是写了一个代码,这样可以只需要制作一个最大的图标1024*1024, 然后通过设置名称与大小信息,一个一个压缩。再替换图标。

<dependencies>
		<dependency>
			<groupId>net.coobird</groupId>
			<artifactId>thumbnailator</artifactId>
			<version>0.4.8</version>
		</dependency>
	</dependencies>
package com.iconcompress;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import net.coobird.thumbnailator.Thumbnails;

public class Compress {
	static Map<String, Integer> fileMap = new HashMap<String, Integer>();
	static String dirPath = ""; //1024原图标所在的目录
	static String srcPic = "logo.png"; //1024的原图标名称
	static {
		fileMap.put("Icon-App-20x20@1x", 20);
		fileMap.put("Icon-App-20x20@2x", 40);
		fileMap.put("Icon-App-20x20@3x", 60);
		fileMap.put("Icon-App-29x29@1x", 29);
		fileMap.put("Icon-App-29x29@2x", 58);
		fileMap.put("Icon-App-29x29@3x", 87);
		
		fileMap.put("Icon-App-40x40@1x", 40);
		fileMap.put("Icon-App-40x40@2x", 80);
		fileMap.put("Icon-App-40x40@3x", 120);

		fileMap.put("Icon-App-60x60@2x", 120);
		fileMap.put("Icon-App-60x60@3x", 180);
		
		fileMap.put("Icon-App-76x76@1x", 76);
		fileMap.put("Icon-App-76x76@2x", 152);
		
		
		fileMap.put("Icon-App-83.5x83.5@2x", 167);
		fileMap.put("Icon-App-1024x1024@1x", 1024);
	

	}

	public static void main(String[] args) {
		for (Map.Entry<String, Integer> entry : fileMap.entrySet()) {
			try {
				System.out.println(entry.getValue().intValue());
				Thumbnails.of(new File(dirPath + srcPic)).size(entry.getValue().intValue(),entry.getValue().intValue()).toFile(new File(dirPath+entry.getKey()+".png"));
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}

	}

}


Card image cap
应用宝
Card image cap
APP STORE
Card image cap
应用宝
Card image cap
小米