Javascript 为什么光标离开画布区域时,jcanvas中的文字会从图形中消失?
我尝试使用JCanvas在画布上绘制不同的形状。所有这些都工作正常,但存在一些问题,当光标离开画布区域时,图形中的文本消失。以下是我的两个不同函数,用于绘制不同类型的形状:Javascript 为什么光标离开画布区域时,jcanvas中的文字会从图形中消失?,javascript,jquery,jcanvas,Javascript,Jquery,Jcanvas,我尝试使用JCanvas在画布上绘制不同的形状。所有这些都工作正常,但存在一些问题,当光标离开画布区域时,图形中的文本消失。以下是我的两个不同函数,用于绘制不同类型的形状: // for round shap function roundTable(width, height, guest_count, id, position, name){ var $p = $('#floor_design'); var lineColor = '#333'; if (positio
// for round shap
function roundTable(width, height, guest_count, id, position, name){
var $p = $('#floor_design');
var lineColor = '#333';
if (position == null) {
position = {"x":150, "y":150};
}else{
position = JSON.parse(position);
}
$p.drawEllipse({
// fillStyle: '#989898',
groups: [id],
strokeStyle: lineColor,
layer: true,
x: position.x, y: position.y,
width: width,
height: height,
}).drawText({
layer: true,
groups: [id],
name: 'myText',
fillStyle: '#fffff',
bringToFront: true,
strokeWidth: 2,
x: position.x, y: position.y,
fontSize: '12pt',
fontFamily: 'Verdana, sans-serif',
text: name
})
//for draw seat
var angle_defference = 360/guest_count;
var radius = width-((width*40)/100);
if (height > width) {
radius = height-((height*50)/100);
};
for (var i = 0; i < guest_count; i++) {
var angle = i* angle_defference
angle = angle * ( Math.PI / 180 ); // Convert from Degrees to Radians
const new_x = position.x + radius * Math.cos(angle);
const new_y = position.y + radius * Math.sin(angle);
//for draw seat
$p.drawArc({
layer: true,
groups: [id],
// dragGroups: [id],
// draggable: true,
fillStyle: 'yellow',
x: new_x, y: new_y,
radius: 5
});
}
};
// for rectangle shap
function ractangularTable(width, height, guest_count, id, position, name){
//same as function roundTable() to draw rectangle shape
};
//用于圆形形状
功能圆桌会议(宽度、高度、客人人数、id、位置、姓名){
var$p=$(“#地板设计”);
变量lineColor='#333';
如果(位置==null){
位置={“x”:150,“y”:150};
}否则{
position=JSON.parse(position);
}
$p.drawerlipse({
//填充样式:“#9898”,
组:[id],
strokeStyle:lineColor,
图层:对,
x:位置,x,y:位置,y,
宽度:宽度,
高度:高度,,
}).drawText({
图层:对,
组:[id],
名称:“myText”,
填充样式:“#fffff”,
布林托夫朗:没错,
冲程宽度:2,
x:位置,x,y:位置,y,
字体大小:“12pt”,
fontFamily:“Verdana,无衬线”,
文本:名称
})
//抽签席位
变量角度偏差=360/客人计数;
var半径=宽度-((宽度*40)/100);
如果(高度>宽度){
半径=高度-((高度*50)/100);
};
对于(变量i=0;i
提前感谢。编辑问题时,请使用
工具,并为问题制作一个有效的示例。