Javafx:如何在 css 中更改 .chart-legend-item-symbol 的大小?
Posted
技术标签:
【中文标题】Javafx:如何在 css 中更改 .chart-legend-item-symbol 的大小?【英文标题】:Javafx: how to change the size of .chart-legend-item-symbol in css? 【发布时间】:2016-12-18 08:00:23 【问题描述】:我对 Javafx 比较陌生,对 CSS 完全陌生。 现在我想将我在 Javafx 中创建的图表导出到 png 文件中,并且因为我想要一张高质量的图片,我更改了我的 CSS 表的一些设置,以便现在字体大小等内容更大。
我设法更改了几乎所有参数,但还有一个问题:我发现无法更改图表图例符号的大小。 Oracle 提供了 JavaFX 参考指南,我发现我应该能够更改样式类 .chart-legend-item-symbol 中的设置。 (https://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cs-s-ref.html)
我还找到了同样来自 Oracle (http://docs.oracle.com/javafx/2/charts/css-styles.htm) 的教程,其中他们说:“默认情况下,图例符号看起来像圆形,因为它们被声明为 5 像素高、5 像素宽的圆角矩形, 和 5 像素半径。”
所以我的问题是:有没有一个参数可以用来改变矩形的 5px 大小?或者我是否需要在这里完全重新定义一个具有其他大小的矩形,如果需要 - 我该怎么做?
我觉得有点傻,直到现在我还没有完全理解 CSS 的语法,但是我问了谷歌也没找到解决这个问题的方法。
非常感谢您的帮助!
【问题讨论】:
没有人有想法吗? :-/ 【参考方案1】:// For Line chart you can use
.default-color0.chart-line-symbol
-fx-background-radius: 0;
或者您可以简单地更改为面积图,将-line-
替换为-area-
【讨论】:
【参考方案2】:请在此处查看jewelsea 的回答: Controlling symbols, etc. in lineCharts inline programmatically.
您可以通过以下方式访问任何图例符号:
.default-color0.chart-legend-item-symbol
.default-color1.chart-legend-item-symbol
.default-color2.chart-legend-item-symbol
也许有更好的方法来实现这一点,但您可以将自定义背景图像设置为 legend-item-symbol 并更改其大小:
.default-color0.chart-legend-item-symbol
-fx-background-color: transparent;
-fx-background-size: 5px;
-fx-background-image: url('../Icons/rectangle.png');
-fx-background-repeat: no-repeat;
-fx-background-position: center;
或在此处使用此方法(饼图的自定义图例符号): https://gist.github.com/jewelsea/1422628
【讨论】:
以上是关于Javafx:如何在 css 中更改 .chart-legend-item-symbol 的大小?的主要内容,如果未能解决你的问题,请参考以下文章