安卓 9.png 图片的制作
安卓的九宫格png图片可以自定义拉伸的区域,所以可以很方便的适应不同宽度高度的设备。
9.png格式是很纯正的png格式,与普通的png不同的是9.png格式的图片最外围有一圈1像素的透明区域,或者说有一条1像素的透明边框,这个区域中只能存在纯黑色和纯透明两种颜色。

图:外围的那圈透明的1px的区域
我们可以在这个1像素宽的外围透明区域中填充纯正的黑色(#000000),来标注该9.png图片的可拉伸区域和内容区域。
可拉伸区域是由图片左方和上方的透明区域中的黑色决定的,内容区域则由右边和下边区域中的黑色决定。
左边和上边的黑色的区域定义的交叉区域就是可拉伸区域。如图:

图中的红色区域就是左边和上边两条黑线交叉的得出来的可拉伸区域
很重要的一点是我们是可以定义多个可拉伸区域的:

四角的红色区域就是会被拉伸的区域
我们甚至可以只定义宽度为1像素的几个点,其实就是把面积为1像素的区域定义为可拉伸区域:

大家应该知道这个9.png的拉伸区域是哪几个部分了吧。
9.png图片的外围透明区域的右边和下边是用来定义内容区域的。其实我觉得把跟内容相关的东西弄到背景图片上来,有点牛头不对马嘴的意思。所谓内容区域就是像文字这些东西只能出现在这个内容区域,有点像web中padding属性的意思。这个就不去讲了,因为我们主要关心的的还是拉伸区域的定义。
有些图片是需要中间拉伸,四周不需要拉伸的,有些则是需要四周拉伸,中间不需要拉伸的,都是可以实现的,这就要看你怎么去画那些“黑线”了。
做9.png的图片我们可以直接在photoshop中来做,就是手动给已有的原始png图片加一个1像素的透明边框,然后在边框上画黑线就行了,最后保存的时候保存为 xxx.9.png的格式就行了。
当然,我们的安卓apk中直接就是包含有专门制作这种图片的工具的,就在apk文件夹中的tool文件夹里面:

我们运行这个工具后,打开一张要做成9.png的png图片:

我们可以用鼠标在透明边框上点击一下来画出一个点:

然后再用鼠标移到点上的时候会出辅助线,一拉就能拉出一条线了:

如果想去掉这条线的话只要把这条线的长度拉成0就行了。
关于9.png的图片的解析是由安卓sdk进行的,它会先判断图片是不是九宫格的,是的话就用九宫格的方式进行渲染。这个我们不用深入了解,知道就行了。要注意的一点是我们从apk文件中解压得到的9.png文件是去掉了外围透明区域的,已经没有九宫格的功能了,我们要使用的话得重新把他重新进行制作。
安卓 9.png 图片的制作的更多相关文章
- .9 png图片的制作
在android开发的过程中我们经常因为没有好的美工图片失真,这样使界面看起来要逊色很多,有的时候可能我们会想在drawable-hdpi,ldpi,mdpi下放不同分辨率的图片,这样虽然可以有效避免 ...
- 安卓开发:图片的显示Mode
安卓开发中将图片放置在ImageView中展示,涉及到图片显示的模式,跟iOS开发中UIView的contentMode属性是一个意思,在安卓UI元素中使用的属性是scaleType,其中枚举值的效果 ...
- android .9图片的制作
android .9PNG图片制作 在android开发的过程中,我们经常因为没有好的美工图片失真,这样使界面看起来要逊色很多,有的时候可能我们会想在drawable-hdpi,ldpi,mdpi下放 ...
- 关于.9.png格式图片的制作与使用
.9.png图片其实就是png格式图片,不过它比普通的png图片外围多了1px(像素)的边框,另外就是使用这种格式的图片可以实现背景自适应大小且不失真的效果. 制作使用步骤: 1.制作属于你自己的pn ...
- webform 图片验证码制作
界面:1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.as ...
- windows和ubuntu下gif动态图片的制作
现在社交软件中, 各种各样的动图为大家交流很大的乐趣. Gif图片比视频小, 比静态JPG图片形象生动, 更适用于产品展示和步骤演示等. 这里简单介绍一下在window系统和ubuntu系统下gif ...
- Android安卓开发中图片缩放讲解
安卓开发中应用到图片的处理时候,我们通常会怎么缩放操作呢,来看下面的两种做法: 方法1:按固定比例进行缩放 在开发一些软件,如新闻客户端,很多时候要显示图片的缩略图,由于手机屏幕限制,一般情况下,我们 ...
- 真正可用的安卓webview html图片上传限制突破处理(拍照+相册都可以用)
两篇起步使用webview参考文章,第一篇解除限制,但会调用外部浏览器打开链接,第二篇 覆盖shouldOverrideUrlLoading return true https://www.jb51. ...
- sql注入记录------类型转换错误---convert()函数,一句话图片马制作
sql注入在联合查询是出现一下错误查不到数据 Illegal mix of collations for operation 'UNION' 用convert() 转换编码为utf8 或者big5 就 ...
随机推荐
- UTL_FILE
在PL/SQL中,UTL_FILE包提供文本文件输入和输出功能. 可以访问的目录通过初始化参数UTL_FILE_DIR设置. 注意:UTL_FILE只能读取服务器端文本文件,不能读取二进制文件.这时候 ...
- 高拍仪拍照SDK开发(良田影像S300L|S500L)
高拍仪拍照SDK开发下载地址:点击下载 本SDK适用于:良田影像S300L|S500L 高拍仪如图: SDN开发包安装之后找到安装目录,如图: 大家找到各自需要的版本即可,需要注意的是如果需要上传图片 ...
- Greenplum 数据库安装部署(生产环境)
Greenplum 数据库安装部署(生产环境) 硬件配置: 16 台 IBM X3650, 节点配置:CPU 2 * 8core,内存 128GB,硬盘 16 * 900GB,万兆网卡. 万兆交换机. ...
- 30套免费的响应式 HTML5 & CSS3 模板下载
HTML5 和 CSS3 网站模板存在巨大的需求,网页设计师们都喜欢现成的网站模板,能够轻松地设计和开发美观,吸引眼球的网站.如果你正在寻找响应式的 HTML5 & CSS3 模板,那么你找对 ...
- CSS 魔法系列:纯 CSS 绘制各种图形《系列六》
我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...
- JQuery 实现页面无刷新
对于JQuery实现页面无刷新的效果,即:应用这个JQuery这个组件,可以实现在页面上加载数据库中的数据信息,但是并没有给用户页面刷新的感觉,这样既可以有效的进行数据交互,也可以不妨碍用户的其他操作 ...
- svn冲突问题详解
开发人员都知道代码管理工具是开发中一个必不可少的工具,这里也不废话详细介绍了.不管你个人喜欢git还是svn还是其他,但还有一大部分公司在使用svn做代码管理工具.这里详细介绍下SVN提交文件时冲突问 ...
- 《ASP.NET SignalR系列》第四课 SignalR自托管(不用IIS)
从现在开始相关文章请到: http://lko2o.com/moon 接着上一篇:<ASP.NET SignalR系列>第三课 SignalR的支持平台 一.概述 SignalR常常依托于 ...
- 让sublime实现js控制台(前提是安装了nodejs)
步骤: 1.找到tools-->build system-->new build system 2.输入 { "cmd": ["D://nodejs/node ...
- 在Winform开发中使用日程控件XtraScheduler
在一些应用场景中,我们可能需要记录某一天,某个时段的日程安排,那么这个时候就需要引入了DevExpress的日程控件XtraScheduler了,这个控件功能非常强大,提供了很好的界面展现方式,以及很 ...