9.1日音讯,android设计之png的方法详解
日期:2013-09-01发布:首创网络浏览:340次
9.1日音讯,android设计之png的方法详解。我们大家在android的设计过程中,为了适配不同的手机分辨率,图片大多需要拉伸或者压缩,这样就出现了可以任意调整大小的一种图片格式png的格式。但是图片是用于android开发的一种特殊的图片···
本文关键字:9.1日,音讯,android,设计,之,png,的,方法,详解,
9.1日音讯,android设计之png的方法详解。我们大家在android的设计过程中,为了适配不同的手机分辨率,图片大多需要拉伸或者压缩,这样就出现了可以任意调整大小的一种图片格式png的格式。但是图片是用于android开发的一种特殊的图片格式,它的好处在于可以用简单的方式把一张图片中哪些区域可以拉伸,哪些区域不可以拉伸设定好,同时可以把显示内容区域的位置标示清楚。
本文结合一些具体的例子来看下png的具体用法。
首先看下普通的png资源与png的资源区别:
普通的png资源就不多介绍了,可以明显看到png的外围是有一些黑色的线条的,那这些线条是用来做什么的呢?我们来看下放大的图像:
放大后可以比较明显的看到上下左右分别有一个像素的黑色线段,这里分别标注了序号。简单来说,序号1和2标识了可以拉伸的区域,序号3和4标识了内容区域。当设定了按钮实际应用的宽和高之后,横向会拉伸1区域的像素,纵向会拉伸2区域的像素。如下图:
拉伸的含义应该比较容易理解,但是内容区域的标注有什么意义呢?我们来看下图:
这里程序设置的文字垂直居中,水平居左的对齐方式。对齐方式是没有问题的,但是对于这种大圆角同时又有些不规则边框的的图形来说,错误的标注方式会让排版看起来很混乱。所以我们需要修正内容区域的线段位置和长度。
把横向的内容区域缩短到圆角以内,纵向的内容区域控制在输入框的高度以内,这样文字就可以正常显示了。
这里还有一种特殊情况,就是本身是png的资源,但是在修改过程中你希望这张png不能被拉伸(在做皮肤的情况中有可能会遇到),那怎么办呢?只要把拉伸区域的点点在透明像素的地方就可以了,这样拉伸的时候会拉伸透明部分的像素,而不会拉伸图像本身。如下图:
大家可以看到拉伸区域的黑点是可以不连续的。
说了半天png的用法,那png如何输出呢?有很多种方式可以输出png,比如说用draw9patch.bat这个工具,或者简单一点,用photoshop直接输出。输出的方式是先输出普通的png资源,然后扩大画布大小,上下左右各空出一个像素,再用一个像素的铅笔工具(颜色选择纯黑色),上下左右分别画点就可以了,保存的时候注意把后缀修改为png。
邯郸网站建设首创网络在引提醒一下大家:有两点需要特别注意下:
1.最外围的一圈像素必须要么是纯黑色,要么是透明,一点点的半透明的像素都不可以有,比如说99%的黑色或者是1%的投影都不可以有;
2.文件的后缀名必须是png,不能是.png或者是png,这样的命名都会导致编译失败。
另外使用“点九”的意义
关于下图,经过测试发现使用普通png的显示效果出现明显的变色横纹。png图片的显示效果明显优于普通png。
使用png格式后,横纹问题基本已解决。因为对于png图片,android系统程序有对其优化的算法。
由于android手机屏幕的材质质量差距大。很多屏幕不支持16位以上的颜色显示。
所以渲染后结果出现丢失颜色,故造成横纹显示。
经与多款android手机对比后发现,屏幕越次的手机横纹越明显。
而使用了png图片技术后,只需要采用一套界面切图去适配不同的分辨率,而且大幅减少安装包的大小。而且这样程序不需要专门做处理的就可以实现其拉伸,也减少了代码量和开发工作量。
- 欢迎大家阅读浏览,部分内容来源于网络,如有侵权,请联系我们删除!
服务项目
热门信息
- 为什么越来越多的企业选择开发小程序?
- 9062025-09-05
- 企业微信如何整合小程序?提升服务效率攻略
- 11172025-08-28
- 微信小程序能为企业带来哪些好处?
- 9352025-08-20
- 2025 年小程序开发新趋势,你的企业跟上了吗?定制服务已就位!
- 10912025-08-05
- 建立一个网站需要多长时间?如何从零开始制作一个企业网站,建站流程是怎么样的?
- 10982025-07-31
- 模板建站?便宜背后,你的企业官网可能正在“隐形失血”!
- 9062025-07-15
- 企业网站建设有什么作用?网站可以为企业创造了哪些价值?
- 10062025-07-01
- 通过微信小程序可以做哪些实用的事情?
- 7032025-06-30
- 小程序开发避坑指南:199、299元陷阱
- 8272025-06-17
- 都2025年了,现在还做小程序有用吗?
- 9022025-06-02
































