drawTextBox \f 8 parameters
This commit is contained in:
parent
6a22e27e09
commit
198f592962
@ -255,7 +255,7 @@
|
||||
|
||||
从V2.5.3以后,也可以使用`\f[...]`来同时绘制一张图片。
|
||||
|
||||
其基本写法是`\f[图片名,起始x像素,起始y像素]`,或者`\f[图片名,起始x像素,起始y像素,绘制宽度,绘制高度]`。
|
||||
其基本写法是`\f[img,x,y]`,或者`\f[img,x,y,w,h]`,或者`\f[img,sx,sy,sw,sh,x,y,w,h]`。
|
||||
|
||||
需要注意的是,这个图片是绘制在UI层上的,下一个事件执行时即会擦除;同时如果使用了\t的图标动画效果,重叠的地方也会被图标动画给覆盖掉。
|
||||
|
||||
@ -263,7 +263,8 @@
|
||||
"x,y": [ // 实际执行的事件列表
|
||||
"\t[勇士]\b[up,hero]\f[1.png,100,100]以(100,100)为左上角绘制1.png图片",
|
||||
"\t[hero]\f[1.png,100,100]\f[2.png,300,300]同时绘制了两张图片",
|
||||
"\f[1.png,100,100,300,300]也可以填写宽高,这样会把图片强制进行放缩到指定的宽高值"
|
||||
"\f[1.png,100,100,300,300]也可以填写宽高,这样会把图片强制进行放缩到指定的宽高值",
|
||||
"\f[1.png,64,64,128,128,100,100,128,128]裁剪1.png上以(64,64)开始的128x128图片,并绘制到画布的(100,100)处"
|
||||
]
|
||||
```
|
||||
|
||||
|
||||
@ -686,14 +686,16 @@ ui.prototype.drawTextBox = function(content, showAll) {
|
||||
// drawImage
|
||||
content = content.replace(/(\f|\\f)\[(.*?)]/g, function (text, sympol, str) {
|
||||
var ss = str.split(",");
|
||||
if (ss.length!=3 && ss.length!=5) return "";
|
||||
if (ss.length!=3 && ss.length!=5 && ss.length!=9) return "";
|
||||
var img = core.material.images.images[ss[0]];
|
||||
if (!core.isset(img)) return "";
|
||||
// 绘制
|
||||
if (ss.length==3)
|
||||
core.drawImage('ui', img, parseFloat(ss[1]), parseFloat(ss[2]));
|
||||
else
|
||||
else if (ss.length=5)
|
||||
core.drawImage('ui', img, 0, 0, img.width, img.height, parseFloat(ss[1]), parseFloat(ss[2]), parseFloat(ss[3]), parseFloat(ss[4]));
|
||||
else if (ss.length==9)
|
||||
core.drawImage('ui', img, parseFloat(ss[1]), parseFloat(ss[2]), parseFloat(ss[3]), parseFloat(ss[4]), parseFloat(ss[5]), parseFloat(ss[6]), parseFloat(ss[7]), parseFloat(ss[8]));
|
||||
return "";
|
||||
});
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user