1
所以我知道你可以使用一个函数来计算Cytoscape.js中的CSS属性,例如在细胞视图中相对于标签的尺寸节点
cytoscape.stylesheet()
.selector('node')
.css({
'width': function(ele) {
return 12;
})
我也知道特殊的价值'标签',可以是属性的价值例如
cytoscape.stylesheet()
.selector('node')
.css({
'width': 'label'
})
我想知道的是,是否有任何特定的属性可用于通过某种因素来缩放标签,例如,我要的是像
cytoscape.stylesheet()
.selector('node')
.css({
'width': function(ele) {
return labelWidth * 1.5; //Where to get labelWidth from
})
特别我想有能力能够计算出一个椭圆形的高度和宽度,使标签被椭圆(可以使用一些数学如Ellipse bounding a rectangle计算完全包含)。
但我一直没有找到一种方法来获取labelWidth。我设法使用rscratch来实现,但只有当节点实际上得到了两次渲染(例如多个.selectors),从给定元素获得标签宽度和高度的任何正确方法(或者至少一种计算它的方式被渲染?)。