Android NinePatch图像似乎是带有额外信息的标准 .png 文件。是否有任何地方的格式规范,因为我希望能够在其他平台上实现它?
7 回答
这是我在该主题上找到的最直接的链接。
只需在图像查看器中查看9 个补丁图像即可。它只是一个 1px 的边框,黑色像素位于可拉伸区域的两侧,透明标记静态部分。
如果放大此图像,您可以看到标记可拉伸区域的黑色边框:
示例 http://web6.twitpic.com/img/91916457-a53b6866db73378bda07c039151c69aa.4bd6119a-full.png
我强烈建议您不要在其他平台上实现 9patch 系统,原因有几个。
我已经使用 Android 的开发者工具一年了,并且大量使用了 9patch 文件。
他们是一场噩梦。PNG 不是数据格式,它是一种图像格式。在 .9.png 文件中混合这两者是自找麻烦。
9patch 文件不是一个好主意,因为它们将图像和数据格式组合到一个文件中,设计人员和开发人员都无法完全管理。
九个补丁文件:您会在维护、支持和更新阶段的某个时候后悔自己的参与。
或许如果在未来某个日期,对 9patch 文件的支持被添加到许多质量工具中(例如,PS CS4 不将 9patch 文件理解为特定格式,也不遵守有效的九个补丁格式的规则。)
用于九个补丁文件的现有工具很糟糕——在我雇用的大多数设计师看来,基本上无法使用。
此链接对于 android 中的九个补丁图像非常有用。
这是 android 中非常有用的示例。仅使用 .9 补丁 PNG 文件。
http://blogingtutorials.blogspot.com/2010/12/android-nine-patch-example.html
现代浏览器支持基于 CSS 9 路径的背景: http ://www.css3.info/preview/border-image/
我发现这个链接非常有用:链接到博客文章。它为创建 9 补丁时定义的不同边界使用了一些示例。它显示了如何使用额外信息来缩放图像的尺寸 (x,y)。
最后,Richard L. 甚至有一个很好的评论,它说明了如何通过在边界中包含中断来添加要防止缩放图像的区域;例如。不缩放图像中的部分。
花了我一会才明白9补丁文件的扩展名应该是xxxx.9而不是xxx.9.png