最近在使用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

AnyChartStock去除水印方法的更多相关文章

  1. python利用opencv去除水印方法

    OpenCV(Open Source Computer Vision Library)是一个跨平台计算机视觉库,实现了图像处理和计算机视觉方面的很多通用算法 在python中可以利用opencv来去除 ...

  2. PS快速去除水印方法

    步骤 第一步:打开PS软件,鼠标左键单击左上角"文件"-"打开",选择一张图片 第二步:鼠标左键单击左边的工具栏"矩形选框工具" 第三步:鼠 ...

  3. Atitit.去除水印的方案

    Atitit.去除水印的方案 1.1. 查找水印的位置 Kegwa imgd posit zo ok le .. Auto find d zo troub ...manu easy 1.2. 还原去除 ...

  4. [Python]爬虫获取知乎某个问题下所有图片并去除水印

    获取URL 进入某个知乎问题的主页下,按F12打开开发者工具后查看network面板. network面板可以查看页面向服务器请求的资源.资源的大小.加载资源花费的时间以及哪些资源加载失败等信息.还可 ...

  5. ◆ 火狐浏览器去除JS方法:

    ◆ 火狐浏览器去除JS方法: 在火狐地址栏输入about:config   回车 在搜索地址栏中输入javascript.enabled 右键 当一行的中的,值由false变成trun,就OK了 . 

  6. html添加keyword,description帮助百度收录处理方法,jsp去除空白行方法

    1.将网页的title,keyword,description写成include包含文件,例如: top.jsp <%@ page language="java" conte ...

  7. delphi 编译的时候 把Warning去除的方法

    delphi  编译的时候  把Warning去除的方法 在 添加 {$WARNINGS OFF}

  8. PS小实验-去除水印

    PS小实验-去除水印 水印是一些品牌商覆盖在图片或视频上的一个商标logo或小文本,比如大家最讨厌的百度logo,作者本人也是比较讨厌水印的,让好端端的一张图片变得美中不足. 个人觉得用photosh ...

  9. pdf 移除密码 去除水印 批量去除水印 编辑文字 批量替换文字

    1.pdf除密码: http://pan.baidu.com/share/link?shareid=308194398&uk=370045712  2.去除水印:http://wenku.ba ...

随机推荐

  1. python学习好书推荐

    1.  编程小白的第一本 Python 入门书 http://www.ituring.com.cn/book/1863 点评:知识体系全面,作者也是功底深厚.对全面了解python非常有帮助.入门级推 ...

  2. 【转】jmeter 进行java request测试

    本周使用jmeter进行一个远程dubbo接口的性能测试,因为没有访问页面,本来开发可以写一个页面,进行http请求的调用,不过已经看到jmeter可以直接对java request进行测试,所以尝试 ...

  3. 【转】Ajax 基础学习

    今天简单的学习了 Ajax 的基础知识,总结在这里.部分代码不是原创,特此说明. [Ajax 简介] AJAX = Asynchronous JavaScript and XML(异步的 JavaSc ...

  4. 二十一、Android上常见度量单位【xdpi、hdpi、mdpi、ldpi】解读

    术语和概念 屏幕尺寸 屏幕的物理尺寸,以屏幕的对角线长度作为依据(比如 2.8寸, 3.5寸). 简而言之, Android把所有的屏幕尺寸简化为三大类:大,正常,和小. 程序可以针对这三种尺寸的屏幕 ...

  5. 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

    首先是OC调用C++的代码.   创建一个Objective-C的项目,并创建c++文件MyCppFile.hpp和MyCppFile.cpp.   把要调用Cpp代码的文件名改成mm后缀名,项目代码 ...

  6. 搭建Cocos2d-JS开发环境

    使用Cocos2d-JS引擎开发游戏,主要的程序代码是JavaScript语言,因此,凡是能够开发JavaScript语言工具都适用于Cocos2d-JS游戏开发.本书我们推荐WebStorm和Coc ...

  7. 使用Eclipse maven构建springmvc项目

    Eclipse maven构建springmvc项目 Listener 监听器 架构 使用Log4J监控系统日志邮件警报 2014-12-16 13:09:16 控制器在完成逻辑处理后,通常会产生一些 ...

  8. Optimistic Offline Lock乐观离线锁

    通过冲突检测和(发生冲突时的)事务回滚,来防止并发业务事务中的冲突. 通常一个业务事务的执行,会跨越一系列的系统事务. 一旦超出了单个系统事务的范围,就不能仅依靠DB管理程序来保证数据一致性. 乐观离 ...

  9. 《asp.net mvc实战》笔记

    对于大部分复杂的项目来说,可能不会在Models文件夹中放置你的模型.一般来说,最好的方法是将你的领域模型放在独立的项目中.这样其他应用程序可以在使用该项目而不必依赖于你的MVC应用程序.我们建议你只 ...

  10. Engine许可初始化 - gis开发初步

    当需要对SDE中的要素类和要素数据集(矢量和栅格)进行编辑时,例如在调用IFeatureDataset的CreateFeatureClass方法时,报错提示: The application is n ...