【问题标题】:AmChart export change font color on exportAmChart 导出在导出时更改字体颜色
【发布时间】:2016-12-09 10:43:14
【问题描述】:

我遇到了问题并尝试了不同的解决方案,但没有成功。 我有一个 amChartXY 图表,它有白色标签,图例文本是白色的,但是当我想构建自定义 pdf 报告时,我无法将这些白色文本转换为黑色。 首先,我有一个将图表导出为 base64 字符串的函数,我希望将文本颜色转换为黑色,但它不起作用。 这是一个菜单项的代码 sn-p,它转换为保存到全局数组对象的 SVG。

menu: [
            {
                class: "",
                label: "Save to draft",
                click: function() {
                    var overrideObject = {
                        backgroundColor : "rgba(255,255,255,1)",
                        color : "#000",
                        legend : {
                            color : "#000"
                        }
                    };
                    var chartObject = this;
                        chartObject.capture(overrideObject, function () {
                            chartObject.toJPG({}, function (base64) {
                            // charts is global array 
                                    charts.push({
                                        name: customName,
                                        chart: base64
                                    });
                            });
                        });
                }
            },

这里overrideObject 将 backgroundColor 属性更改为白色(之前是透明的),但它没有更改字体颜色。我也尝试过添加不同的属性,但似乎没有任何效果。 这在捕获时可能吗?

以下是我想要完成的一些图像预览: 用于导出的 AmChart 文档记录不完善,因此欢迎提供任何反馈

【问题讨论】:

    标签: svg export amcharts


    【解决方案1】:

    您传递的 overrideObject 仅接受列出的相同参数 in the list of export settings。如果您需要更改图表上特定元素的外观,您需要使用the annotation settings section 中提到的reviver 回调来选择性地应用您的修改。例如,以下是定位值轴标签的方法:

      "export": {
        "enabled": true,
        "reviver": function(nodeObj) {
          if (nodeObj.className === 'amcharts-axis-label' && nodeObj.svg.parentNode.classList.contains('amcharts-value-axis')) {
            nodeObj.fill = 'rgba(255,0,0,1)';
          }
        },
        // ...
      }
    

    请注意,您需要使用 SVG 属性来更改外观,因此您必须设置填充来更改文本元素的颜色。

    Codepen demo

    【讨论】:

    • 它有效,非常感谢(文档中的一小部分,我在阅读时什至没有看到它)
    猜你喜欢
    • 2015-08-22
    • 2014-07-30
    • 2012-05-21
    • 1970-01-01
    • 2018-07-26
    • 2014-09-14
    • 2023-03-05
    • 2014-02-24
    • 2021-04-16
    相关资源
    最近更新 更多