zoukankan      html  css  js  c++  java
  • AnyChartStock去除水印方法

      最近在使用AnyChartStock的图表,功能很强大,但下载过来是有水印的,虽然网上也有很多破解无水印的版本,但基本都是AnyChart的,AnyChartStoc的几乎没有。所以自己尝试着去除水印。

      首先想到的是用Sothink SWF Decompiler或类似的反编译工具来反编译,然后再用flash来生成swf文件,这个方法首先要装这两个软件,另外Sothink SWF Decompiler找来找去找不到一个破解版,只好有试用版本,能查看代码,发现产生水印是在一个叫'StockTrail'的类里加入的,具体代码如下:

    public function StockTrial(param1:Boolean=true) {
             this.doRenderBitmap = param1;
             var _loc2_:TextFormat = new TextFormat();
             _loc2_.font = "Verdana";
             _loc2_.size = 60;
             var _loc3_:TextField = new TextField();
             _loc3_.text = "AnyChartStock Trial Version";
             _loc3_.autoSize = TextFieldAutoSize.LEFT;
             _loc3_.setTextFormat(_loc2_);
             var _loc4_:BitmapData = new BitmapData(_loc3_.width,_loc3_.height,true,0);
             _loc4_.draw(_loc3_);
             this.trialBitmap = new Bitmap(_loc4_);
             this.trialBitmap.alpha = 0.15;
             this.xmlFile = null;
             this.trialWidth = _loc3_.width;
             this.trialHeight = _loc3_.height;
             super();
          }

    上面红色的‘AnyChartStock Trail Version'就是水印的文字了。但是测试版本的反编译工具不支持导入成完整的fla文件,所以只好另想办法。

      接着想到了是否可以直接修改swf的二进制文件来去掉水印文字,所以就用二进制文件查看器找开,找了半天也没找到AnyChartStock Trail Version的字样,看来没这么简单,所以就去了解了一下swf的文件格式,google了下,原来adobe提供了详细的格式说明,这个是链接

         对照格式说明,原来手头上的这个swf文件的主要内容是经过zlib压缩过的,难怪找不到文字。于是就按照格式把文件的前8个字节去掉,生成一个新文件,然后把这个文件内容进行解压缩,得到解压后的文件,再用二进制文件查看器去看时就找到AnyChartStock Trail Version的文字了,接着全部替换成空格,再压缩回去,最后把去掉的8字节加上,测试了下,大功告成,呵呵。

      随便说下我用的二进制编辑工具,叫Bless,功能很强大。另外压缩和解压缩zlib使用的是openssl zlib 的方法。

    最后分享该文件,欢迎下载。

    AnyChartStock: http://pan.baidu.com/s/13PfL2

    AnyChart: http://pan.baidu.com/s/1oqcuE

  • 相关阅读:
    hdu 1258 DFS
    hdu2488 dfs
    poj1915 BFS
    hdu1372 BFS求最短路径长度
    poj3264 线段树
    hdu 2438Turn the corner 三分
    hdu3714 三分
    【转载】单点登陆
    ajax从入门到深入精通
    Web前端技术体系大全搜索
  • 原文地址:https://www.cnblogs.com/jmax/p/3364453.html
Copyright © 2011-2022 走看看