制作特别的.9图片
2016-06-17 17:03
295 查看
.9图片的加工
Android的SDK自带了.9图片的加工工具,路径是SDK安装目录下的sdk\tools\draw9patch.bat,运行该程序就会呈现工具界面。把需要加工的png图片拖到该工具界面上,图片便加载到工具处理画面
左边窗口是图片加工区域,右边窗口是图片预览区域,从上到下依次是纵向拉伸预览、横向拉伸预览、未拉伸预览。
在左边窗口图片四周的马赛克处,单击即出现一个黑点,然后把黑点左右或上下拖动,就会拖出一段黑线,不同方向上的黑线表示不同的处理效果。
.9图片的四个属性
上方的黑线,指的是水平方向的拉伸区域。水平方向拉伸图片时,只有黑线区域内的图像会被拉伸,黑线两边的图像保持原状,这保证了左右两边的边框厚度不变。左方的黑线,指的是垂直方向的拉伸区域。垂直方向拉伸图片时,只有黑线区域内的图像会被拉伸,黑线两边的图像保持原状,这保证了上下两边的边框厚度不变。
下方的黑线,指的是该图片作为控件背景时,控件内部的文字左右边界只能放在黑线区域内。这里Horizontal Padding的效果就相当于android:paddingLeft与android:paddingRight。
右方的黑线,指的是该图片作为控件背景时,控件内部的文字上下边界只能放在黑线区域内。这里Vertical Padding的效果就相当于android:paddingTop与android:paddingBottom。
在实际开发中,前两个属性使用的比较多,因为很多场景都要求图片拉伸要保真。后两个属性,一般用的不多,但若是不知道,遇到问题还挺麻烦的。博主以前接手别人的项目时,就看到一个页面的文字总是与顶端有段距离,不管我怎么折腾xml和代码,都不管用。后来在高人的指点下,才想起来检查该页面的背景图片,结果用draw9patch.bat打开背景图,一下就发现该图片是不折不扣的.9图片,原来在水平和垂直方向上都设置了padding,这才解决了一大困惑。
相关文章推荐
- C#中的where泛型约束中的new()使用(转)
- ecshop 模板开发总结
- Tomcat下使用war包发布项目
- NYOJ 927 The partial sum problem (DFS)
- pdf-renderer 把 pdf 转换成图片时报:java.io.IOException: Unknown CMap: UniGB-UCS2-H 的解决办法
- 2016年武汉大学计算机学院“新技术系列讲座”简介记录
- jQuery-Ajax
- 手机适配,density,dp和px的转换
- DES加密模板,和C#des加密
- android Gui系统之SurfaceFlinger(3)
- html5向左滑动删除特效
- OpenCL编程bug
- JQuery学习一
- jQuery-HTML
- 监听网络
- 解决img标签间距问题
- go安装步骤
- Event使用(二)
- APACHE支持静态化
- html——下拉列表