我正在尝试使用 Kinetic js 为画布中的文本设置动画
画布尺寸 940 x 600
动画是 x 和 y
我似乎无法正确定位,我希望垂直在顶部开始和结束,水平在左侧开始和结束。
目前他们正在朝着正确的方向前进,但他们在画布之外开始和结束。
这可能与设置的幅度有关,但我在 js 编码方面并不擅长,还不知道哪里出了问题。
<script defer="defer">
var stage = new Kinetic.Stage({
container: 'horandvert',
width: 940,
height: 600
});
var layer = new Kinetic.Layer();
var hbox = new Kinetic.Text({
x: 50,
y: 240,
fontSize: 38,
fontFamily: 'Calibri',
text: 'Horizontal',
fill: '#317d37',
padding: 0,
});
var vbox = new Kinetic.Text({
x: 330,
y: 50,
fontSize: 38,
fontFamily: 'Calibri',
text: 'Vertical',
fill: '#317d37',
padding: 0,
});
layer.add(hbox);
layer.add(vbox);
stage.add(layer);
var amplitude = 400;
var period = 3000;
var anim = new Kinetic.Animation(function(frame) {
hbox.setX (amplitude * Math.sin(frame.time * 1 * Math.PI / period));
vbox.setY(amplitude * Math.sin(frame.time * 1 * Math.PI / period));
}, layer);
anim.start();
</script>