一个切图工具分享(python)

最近开发的android 应用上架小米的时候总是报out of memory 错误, 仔细review了N多遍代码,并没有发现那里不妥的地方, 而且自己使用过程中也没有崩溃过. 于是使用moniter 监测了一下内存, 发现图片占用了很大内存空间.

之前写代码都是设计直接给图,然后将图放到对应目录下, 没怎么研究过图片尺寸的问题, 这次没有专业设计师协助, 都是统一搞一张大图放到mipmap中.

经过这次的问题, 详细学习了android中尺寸相关内容, 内容如下两篇参考文献:

Android-分辨率以及dip(dp)、dpi、ppi、px、sp、pt说明

Android开发中dip,dpi,density,px等详解

在以上学习基础上, 使用python 的pillow库写了一个切图的工具, 有两个功能:

  1. icon切割, 切割正方形图片,根据Android设计规范将图标切割

    iconDirs = ["mipmap-ldpi","mipmap-mdpi","mipmap-hdpi","mipmap-xhdpi","mipmap-xxhdpi","mipmap-xxxhdpi"]
    iconSizes = [36, 48, 72, 96, 144, 192]

1.1 ios 图标切割, 根据ios设计规范切割图片

  1. 根据dip 修改图片大小
    实现原理根据不同dpi对应的数值,使用公式 px = dip * dpi / 160;

    imgDirs = ["mipmap-ldpi", "mipmap-mdpi", "mipmap-hdpi", "mipmap-xhdpi", "mipmap-xxhdpi", "mipmap-xxxhdpi"]
    imgDpis = [120, 160, 240, 320, 480, 640]

附件: 详细代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容