Highcharts自定义文本从右到左导出

时间:2015-02-26 14:49:57

标签: javascript jquery html css highcharts

我的问题是我有一个图表,并且我有一些自定义文本,必须位于图表的右上角和下角,使用renderer.text('text', 600, 30).add();

我首先得到它renderer.text('text', 600, 30).css('direction': 'rtl').add(); 这工作正常,但当我出口它不认识stlye

然后我尝试使用renderer.text('<span style="direction:rtl;">text</span>', 600, 30).add(); 这也只能在页面上显示,但导出不是

有什么方法可以解决这个问题吗?

sample

1 个答案:

答案 0 :(得分:1)

避免整个&#34; CSS和导出&#34;这个特殊问题的问题是使用文本的边界框来正确放置它,而不是CSS解决方案。

function (chart) { // on complete
    var rightTop = [590,85];
    var element = chart.renderer.text('This is a looooong text', 0, -100).add();
    var boundingBox = element.getBBox();
    element.destroy();
    chart.renderer.text('This is a looooong text', 
            rightTop[0] - boundingBox.width, 
            rightTop[1]).add();
}

此处rightTop变量代表我们希望它放置的位置。然后添加文本(视觉外),我们得到边界框以了解它的大小,然后销毁它。然后我们在正确的位置重新创建文本。

请参阅this JSFiddle example,了解它的工作原理。