小编Jam*_*tor的帖子

相对于 cytoscape 中的标签调整节点大小

所以我知道你可以使用函数来计算 Cytoscape.js 中的 css 属性,例如

cytoscape.stylesheet()
  .selector('node')
    .css({
      'width': function(ele) {
        return 12;
    })
Run Code Online (Sandbox Code Playgroud)

我还知道特殊值“标签”可以是属性的值,例如

cytoscape.stylesheet()
  .selector('node')
    .css({
      'width': 'label'
    })
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何特定的属性可以用来按某种因素缩放标签,例如我想要的是类似的

cytoscape.stylesheet()
  .selector('node')
    .css({
      'width': function(ele) {
        return labelWidth * 1.5; //Where to get labelWidth from
    })
Run Code Online (Sandbox Code Playgroud)

特别是,我希望能够计算椭圆的高度和宽度,以便标签完全包含在椭圆内(可以使用一些数学来计算,例如Ellipseboundingaquartz)。

但我一直无法找到获取 labelWidth 的方法。我确实设法使用 rscratch 来做到这一点,但前提是节点实际上被渲染了两次(例如多个 .selectors),任何从给定元素获取标签宽度和高度的正确方法(或者至少是一种计算它的方法)被渲染?)。

cytoscape.js

5
推荐指数
1
解决办法
1642
查看次数

标签 统计

cytoscape.js ×1