ninepatch 分析
16lz
2021-01-23
首先百度下:ninepatch
官网:android
http://developer.android.com/reference/android/graphics/NinePatch.html
libgdx官网:
https://github.com/libgdx/libgdx/wiki/Ninepatches
一个博客简单说明:
http://blog.csdn.net/wangshione/article/details/5899785
首先我们先说一下这个图的目的:
.9后缀的图片为ninepatch的标志,此图为了在图片进行缩放时,上下左右需要保持多大像素不再整体的缩放范围内。
从而保证图片拉大或者缩小不会模糊。
创建方式:
NinePatch patch = new NinePatch(new Texture(Gdx.files.internal("knob.png")), 12, 12, 12, 12);
这句话的意思为:
创建一个NinePatch的图,缩放时左右上下各保持12像素不在整体缩放范围。如下图所示:
我们可以看到整个图被分为了9各部分,这就是名字的来由。
缩放时中间区域进行比例放大。周围的比如左边,意味着如果图片横向放大,则左边保持原来的12像素不变,如此设计在横向拉大时,不会把这12像素点拉开,从而保证轮廓清晰。
libgdx设计的NinePatch接口,便是使用九个图片方位来记录各个区域,从而对整个图局部缩放,来完成整个布局拉大或缩小不失真。
下一讲:
Pack the image using SkinPacker
分析下SkinPacker的实现。
官网:
http://code.google.com/p/libgdx-users/wiki/SkinPacker
敬请期待。
官网:android
http://developer.android.com/reference/android/graphics/NinePatch.html
libgdx官网:
https://github.com/libgdx/libgdx/wiki/Ninepatches
一个博客简单说明:
http://blog.csdn.net/wangshione/article/details/5899785
首先我们先说一下这个图的目的:
.9后缀的图片为ninepatch的标志,此图为了在图片进行缩放时,上下左右需要保持多大像素不再整体的缩放范围内。
从而保证图片拉大或者缩小不会模糊。
创建方式:
NinePatch patch = new NinePatch(new Texture(Gdx.files.internal("knob.png")), 12, 12, 12, 12);
这句话的意思为:
创建一个NinePatch的图,缩放时左右上下各保持12像素不在整体缩放范围。如下图所示:
我们可以看到整个图被分为了9各部分,这就是名字的来由。
缩放时中间区域进行比例放大。周围的比如左边,意味着如果图片横向放大,则左边保持原来的12像素不变,如此设计在横向拉大时,不会把这12像素点拉开,从而保证轮廓清晰。
libgdx设计的NinePatch接口,便是使用九个图片方位来记录各个区域,从而对整个图局部缩放,来完成整个布局拉大或缩小不失真。
下一讲:
Pack the image using SkinPacker
分析下SkinPacker的实现。
官网:
http://code.google.com/p/libgdx-users/wiki/SkinPacker
敬请期待。
更多相关文章
- android 开发:保存图片到SD卡上
- [Android] 图片JNI(C++\Java)高斯模糊 多线程
- android 调用系统的图片选择
- android中Bitmap图像处理 修改图片大小以及保存时的文件大小
- android 使用反射机制获取工程中的图片
- 设置图片缩放方法失效 解决办法设置android:scaleType属性