无法使用“使用<object> / <embed /> Tags'</object>嵌入图表导出融合图

时间:2010-12-28 04:48:59

标签: pdf export embed fusioncharts

我正在尝试导出使用“使用/标签嵌入图表”创建的融合图表。

通过右键单击(在图表上)导出工作非常完美,并选择要导出的pdf。 但是我无法通过javascript完成这项工作。我在图表外面有一个按钮,点击后会调用下面的功能

function myexport()
{
 var cObject = getChartFromId('Column3D');
        if( cObject.hasRendered() ) cObject.exportChart({exportFormat: 'PDF'});
}

返回的上述对象为null,并且在下一行

时失败

这是完整的原型

<html>
 <head>
<title>My Chart</title>
<script type="text/javascript" src="fusionCharts.debug.js"></script>
<script type="text/javascript" src="fusionChartsExportComponent.js"></script>
<script type="text/javascript">
    function ExportMyChart() {
        var cObject = getChartFromId('Column3D');
        if( cObject.hasRendered() ) cObject.exportChart({exportFormat: 'PDF'});
 }
</script>
  </head>
  <body>
     <object width="400" height="400" id="Column3D" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"    codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" >         
<param name="testname" value="Column3D.swf" />         
<param name="FlashVars" value="&dataURL=testData.xml&chartWidth=400&chartHeight=300&DOMId=myChart1&registerWithJS=1&debugMode=0">
<param name="quality" value="high" />         
<embed src="Column3D.swf" 
    flashVars="&dataURL=testData.xml&chartWidth=400&chartHeight=300&DOMId=myChart1&registerWithJS=1&debugMode=0"
    width="400" height="300" name="Column3D" quality="high" type="application/x-shockwave-flash"    pluginspage="http://www.macromedia.com/go/getflashplayer" />      
</object>

<!-- We also create a DIV to contain the FusionCharts client-side exporter component -->
<div id="holderDiv" align="center">FusionCharts Export Handler Component</div>
<script type="text/javascript">

 var myExportComponent = new FusionChartsExportObject("testExporter1", "FCExporter.swf");

//Render the exporter SWF in our DIV fcexpDiv
myExportComponent.Render("holderDiv");
</script>
<input type="button" value="Export My Chart" onclick="ExportMyChart()" />

2 个答案:

答案 0 :(得分:0)

在fusion charts论坛上找到了答案。当在图表的浏览器中使用embed和object标记时,导出导航时会出现问题。

解释了这个问题的解决方法 here

答案 1 :(得分:0)

请在下面找到修改后的代码:

    我的图表

         函数ExportMyChart() {  var cObject = document.getElementById('Column3D');  if(cObject.hasRendered&amp;&amp; cObject.hasRendered())  cObject.exportChart({exportFormat:'PDF'}); }  

FusionCharts导出处理程序组件   var myExportComponent = new FusionChartsExportObject(“fcExporter1”,“../../ FusionCharts/FCExporter.swf”); myExportComponent.Render( “holderDiv”);   

希望这有帮助。