Java点九图片解析 NinePatch

码农软件 · 软件分类 · 图形/图像处理 · 2019-09-06 07:42:50

软件介绍

关于JavaSE NinePatch

JavaSE NinePatch是一款针对Swing和JavaFX对点九图片解析的一种实现方式

关于点九

点九图又称九图,是一种png格式的图片,其后缀为.9.png,其与传统png图片不同的地方是,点九图的四周边缘各有1个像素宽高的区域,而且只能填两种颜色,透明(#00000000)和黑色(#FF000000),其目的是用于对该图片的扩展区域和内容显示区域进行定义。

使用点九PNG技术,可以将图片横向和纵向同时进行拉伸,并能保持图片细节,不会因为图片拉伸而模糊失真。

原理

如下图所示,这是一张点九图,左侧和上侧作为扩展区域,右侧和下侧则是控制内容显示的区域。当需要上下拉伸的时候,就从左侧和上侧的黑色区域非重合垂直部分开始复制拉伸;当需要左右拉伸的时候,就从上侧和左侧的黑色区域非重合水平部分开始拉伸。当想要在显示文字时,控制其与上下或左右边缘的距离,可以设置右侧或下侧的黑色区域,右侧的黑色区域控制内容上下位置,下侧控制内容的左右位置。

JavaFX使用示例

Canvas canvas = new Canvas(480, 360); 
GraphicsContext gc = canvas.getGraphicsContext2D(); 
Image img = new Image(getClass().getResource("/icon_qipao.9.png").toExternalForm()); 
FxNinePatch np = new FxNinePatch(img);
np.drawNinePatch(gc, 28, 28, 400, 100);

运行效果


本文地址:https://codercto.com/soft/d/13979.html

The Shallows

The Shallows

Nicholas Carr / W. W. Norton & Company / 2010-6-15 / USD 26.95

"Is Google making us stupid?" When Nicholas Carr posed that question, in a celebrated Atlantic Monthly cover story, he tapped into a well of anxiety about how the Internet is changing us. He also crys......一起来看看 《The Shallows》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具