绘制9-patch图片工具让你使用可见即可得(WYSIWYG)编辑器轻松创建Nine Patch图像。

关于介绍Nine-path图片和它是如何工作的,请在2D Graphics的文档中查阅关于Nine-patch的章节。

这里是使用Draw 9-path工具创建Nine-patch图像的快速指南。你想创建一张NinePatch图片,你需要PNG图片。

  1. 打开终端,从你的SDK/tools目录启动draw9patch程序。

  2. 将你的PNG图片拖拽到Draw 9-patch窗口中(或者File>Open 9-patch..来查找文件)。现在将打开你的工作空间。

左边的面板是你的绘图区域,在这里你能编辑可伸缩区域和内容区域的线条。右边的面板是预览区域,在这里你能预览在拉伸时的你的图形。

  1. 在1-像素的周长内点击来绘制线条,定义可伸缩块和(可选的)内容区域。右击(或者按住Shift点击,在Mac上)来擦出以前绘制的线条。

  2. 当完成的时候,选择File>Save 9-patch...

你的图片将使用.9.png文件名称被保存。

注意:一张普通的PNG文件(*.png)将会以空1-像素边框围绕图片被加载,在这里你可以绘制可拉伸块和内容区域。一张先前保存9-patch文件(*.9.png)将会以原样加载,没有绘图区域填充,因为它已经存在。

可选的控制包括:

  • Zoom:调整图片在绘图区域的缩放级别。

  • Patch scale:调整图片在预览区域的比例。

  • Show lock:在鼠标悬浮的时候可视化图片的不可拉伸区域。

  • Show patches:在绘图区域预览可拉伸块(粉色的是可拉伸块)。

  • Show content:在预览图片中高亮内容区域。(紫色是内容允许的区域)。

  • Show bad patches:在块区域添加红色的边界,当拉伸的时候它可能会在图像中产生绘图块效应。如果你消除所有的坏块,将保持你的拉伸图片的可视化的连贯性。

Android Developers:绘制9-patch图片的更多相关文章

  1. Android中绘制圆角矩形图片及任意形状图片

    圆角矩形图片在苹果的产品中很流行,相比于普通的矩形,很多人都喜欢圆角矩形的图片,因为它避开了直角的生硬,带来更好的用户体验,下面是几个设计的例子: 下面在Android中实现将普通的矩形图片绘制成圆角 ...

  2. 【Android Developers Training】 64. 绘制形状

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  3. 【Android Developers Training】 56. 更效率地加载大图片

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  4. Android View加载圆形图片且同时绘制圆形图片的外部边缘边线及边框:LayerDrawable实现

     Android View加载圆形图片且同时绘制圆形图片的外部边缘边线及边框:LayerDrawable实现 LayerDrawable实现的结果和附录文章1,2,3中的layer-list一致. ...

  5. Android ImageView加载圆形图片且同时绘制圆形图片的外部边缘边线及边框

     Android ImageView加载圆形图片且同时绘制圆形图片的外部边缘边线及边框 在Android早期的开发中,如果涉及到圆形图片的处理,往往需要借助于第三方的实现,见附录文章1,2.And ...

  6. 【Android Developers Training】 54. 打印自定义文档

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  7. 【Android Developers Training】 53. 打印HTML文档

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  8. Android UI 绘制过程浅析(五)自定义View

    前言 这已经是Android UI 绘制过程浅析系列文章的第五篇了,不出意外的话也是最后一篇.再次声明一下,这一系列文章,是我在拜读了csdn大牛郭霖的博客文章<带你一步步深入了解View> ...

  9. Android视图绘制流程完全解析,带你一步步深入了解View(二)

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/16330267 在上一篇文章中,我带着大家一起剖析了一下LayoutInflater ...

随机推荐

  1. vasa构架

  2. Java多线程-BlockingQueue-ArrayBlockingQueue-LinkedBlockingQueue

    前言: BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利.本文详细介绍了Blocking ...

  3. 转:nginx基础概念(lingering_close)

    lingering_close,字面意思就是延迟关闭,也就是说,当nginx要关闭连接时,并非立即关闭连接,而是再等待一段时间后才真正关掉连接.为什么要这样呢?我们先来看看这样一个场景.nginx在接 ...

  4. Visual Studio修改可执行程序的文件名和路径

  5. Mysql Left Join Where On

    select t1.id,t2.idfrom t1left join t2 on t1.id = t2.id and t1.id>1 and t2.id<>3在mysql的left ...

  6. ES6学习笔记五:Promise异步任务

    一:Promise对象 Promise对象代表一个异步操作,有三种状态:Pending(进行中).Resolved(已完成,又称 Fulfilled)和Rejected(已失败). 二:创建与使用 v ...

  7. Java多线程之syncrhoized内置互斥锁的用法详解

       转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827547.html    解决并行冲突最有效的方法就是加同步锁,主要有以下几种方法:   1:动态方法 ...

  8. 使用static关键字修饰一个属性

    //使用static关键字修饰一个属性 //static作用: //static:静态 //1.使用static关键字修饰一个属性,声明为static的变量本质就是一个全局变量; //2.静态变量或方 ...

  9. MBTiles 1.2 规范翻译

    MBTiles 1.2 可以参考超图的文档MBTiles扩展 具体实现可以参考浅谈利用SQLite存储离散瓦片的思路和实现方法 mapbox提供了一个简单实现测试代码,github地址在这里https ...

  10. Linux系统下批量创建用户

    Linux批量创建用户 [root@ldapserver ~]# ) ; do useradd -d /home/ldapuser$i ldapuser#i; done [root@ldapserve ...