Javafx:如何在css中更改.chart-legend-item-symbol的大小?

时间:2016-08-11 14:10:03

标签: css javafx size legend symbols

我对Javafx相对较新,对CSS也是全新的。 现在我想将我在Javafx中创建的图表导出到png文件中,因为我希望有一个高质量的图片,我改变了我的CSS表格的一些设置,以便像字体大小这样的东西现在更大。

我设法改变了几乎所有参数,但我还有一个问题:我发现无法改变图表图例符号的大小。 Oracle提供了一个JavaFX参考指南,我发现我应该能够更改样式类.chart-legend-item-symbol中的设置。 (https://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html

我还发现了一个来自Oracle(http://docs.oracle.com/javafx/2/charts/css-styles.htm)的教程,他们说:“默认情况下,图例符号看起来像圆圈,因为它们被声明为高度为5像素的圆角矩形,5-像素宽度和5像素半径。“

所以我的问题是:是否有一个参数可以用来改变矩形的5px大小?或者我需要在这里完全重新定义另一个尺寸的矩形,如果是这样 - 我该怎么做?

我觉得有点愚蠢,因为直到现在我还没完全理解CSS的语法,但是我没有找到解决这个问题的解决方案,只要求谷歌。

非常感谢你的帮助!

2 个答案:

答案 0 :(得分:0)

请在这里查看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{}

也许有更好的方法来实现这一目标,但您可以将自定义背景图像设置为图例项目符号并更改其大小:

.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

答案 1 :(得分:-1)

// For Line chart you can use

.default-color0.chart-line-symbol {
    -fx-background-radius: 0;
}

或者您只需将-line-替换为-area-

即可更改为区域图表