原文地址:http://blog.csdn.net/mbday816/article/details/21304511
下载FusionCharts3.3.1,地址:http://www.fusioncharts.com/downloads/Evals/FusionCharts_XT_Evaluation.zip
下载了URLActionEditor6.0,地址:http://nj.baidupcs.com/file/48aa5de9017395b6a2a98ce412dbd786?xcode=933586c4ed992420927c616b449e3f0fa360f36adad73fb6&fid=806033567-250528-1184314024&time=1395888130&sign=FDTAXER-DCb740ccc5511e5e8fedcff06b081203-dO3NytcOG3H9aRyQ7gyh7%2BT5qbI%3D&to=nb&fm=N,B,T,t&newver=1&expires=1395888730&rt=sh&r=607510414&logid=2988819451&sh=1&vuk=4261540212&fn=URL%20Action%20Editor6.0.zip
原文内容:
---------------------------------------------------------------------------------------
通过查看任一图表swf源文件,可以找到添加水印的代码部分:
- function addEvalMark()
- {
- var __reg4 = _root._url;
- __reg4 = __reg4.toUpperCase();
- if (__reg4.indexOf("INFOSOFTGLOBAL.COM") == -1 && __reg4.indexOf("FUSIONCHARTS.COM") == -1)
- {
- var __reg3 = new Object();
- __reg3.align = "left";
- __reg3.vAlign = "bottom";
- __reg3.bold = true;
- __reg3.italic = false;
- __reg3.underline = false;
- __reg3.font = "Verdana";
- __reg3.size = 11;
- __reg3.color = "333333";
- __reg3.isHTML = true;
- __reg3.leftMargin = 5;
- __reg3.letterSpacing = 0;
- __reg3.bgColor = "FFFFFF";
- __reg3.borderColor = "333333";
- var __reg5 = this.createText(false, "<a href=\'http://www.fusioncharts.com?BS=FCEvalMark\'>FusionCharts
- Trial</a> ", this.cMC, 25001, 0, 0, 0, __reg3, false, 0, 0);
- }
- }
分析:_root._url获取swf文件的路径,如果文件路径中包含INFOSOFTGLOBAL.COM或者FUSIONCHARTS.COM字符串,则不会显示水印。
解决方法:清楚整个处理机制后,我们可以简单在部署自己的应用时,将存放swf和js核心文件的Charts或者Maps目录的上级目录命名为上述两个字符串的任意一个,即可达到预期效果。
此方法同样适用于FusionChartsSuiteXTEval
备注:对于未部署flash控件的或者使用js方式渲染图表的,去水印的方法是直接修改FusionCharts.HC.js文件中的一处即可。
直接破解swf的方法:使用URL Action Editor打开各个swf文件,查找www.fusioncharts.com,修改两处数值-1为任意值即可。