About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • May

    30

    Acrobat 插件 Quite imposing plus3

    • 0 Comments
    • Miscellaneous

    Acrobat 插件 Quite imposing plus3  的功能非常强,常见的信息处理,拼版处理,分割处理,出血处理,奇偶页重排序,颠倒排序,旋转处理,添加与去除元素处理等等。目前它的汉化版本在“CPC中文印刷社区”有下载。试用之后感觉比以前用的2.2的汉化版本确实要稳定和快速的多,840多跨页的PDF文件在本人的计算机中(Win7+i5+SSD硬盘),分页裁切与重排序处理中,几乎是瞬间完成,没有任何卡机或停顿的现象产生。

    外部链接不保证长期有效:http://www.cnprint.org/bbs/thread/77/142382/

    May

    30

    由于软件升级(比如我从8.0升级到10.0版本),或弃用等原因,如果卸载了旧的 Acrobat 会发现有遗留文件夹的存在,其它文件夹都容易删除,但唯有CMap 文件夹是不能删除的。在Win7 中即便使用administrator帐户登录也是无法删除它的,因为它的权限是属于系统的。所以网上一些贴子中所写的关闭UAC或使用最高管理员权限登录等删除等等,都是不可行的;还有一些则简单的一句将Users与Everyone帐户并提升为完全控制权限等对于不熟悉Win7帐户安全的计算机用户来说,也是不太可能完设置的(特别是打了系统补丁的情况下),因为它的安全设置实在步骤太烦锁了(看完下面就会明白)。

    More...

    May

    29

    import flash.display.BitmapData;
    this.createEmptyMovieClip("input_mc",1);
    input_mc.createTextField("input_txt",1,0,0,100,20);
    input_mc.input_txt.border = true;
    input_mc.input_txt.type = "input";
    var txt_bmp:BitmapData = new BitmapData(input_mc._width+1, input_mc._height+1, true, 0x000000);
    txt_bmp.draw(input_mc);
    this.createEmptyMovieClip("show_txt",2);
    show_txt.attachBitmap(txt_bmp,1,"always",true);
    show_txt._x = 100;
    show_txt._y = 100;
    show_txt._rotation = 30;
    show_txt.onRelease = txtGetFocus;
    show_txt._alpha = 50;
    function txtGetFocus() {
     Selection.setFocus(input_mc.input_txt);
     input_mc.input_txt.onChanged = function() {
      txt_bmp = new BitmapData(input_mc._width+1, input_mc._height+1, true, 0x000000);
      txt_bmp.draw(input_mc);
      show_txt.attachBitmap(txt_bmp,1,"always",true);
      show_txt._alpha = 50;
     };
    }

    以上方法可以解决AS1/2动态文本需要嵌入字体造成文件变大的问题(但不适合非系统自带的字体,如果客户端未安装相应的字体是无法显示的或用自动会被设置字体代替)。最新的FLASH版本与AS3结合高级文本功能,旋转之后直接可以显示文本(同样不适合非系统自带的字体)。

    More...

    May

    29

    var _arr:Array = ["", "我", "爱", "我", "我们", "我们的家"];
    var out_arr:Array = [];
    function arr_string():Void {
     if (_arr.length>1) {
      for (var i:Number = 1; i<_arr.length; i++) {
       temp = _arr[i].split(_arr[0]);
       if (temp.length>1) {
        _arr[i] = temp.join("");
       }
      }
      out_arr.push(_arr[0]);
     } else {
      out_arr.push(_arr[0]);
      return;
     }
     _arr.splice(0,1);
     arr_string();
    }
    arr_string();
    trace(out_arr);
    //删除所有""空元素
    for (var i:Number = 0; i<out_arr.length; i++) {
     if (out_arr[i] == "") {
      out_arr.splice(i,1);
      i--;
     }
    }
    trace(out_arr);

    以上算法如需应用在AS3中,需要将Void小写,并标注变量类型。

     

     

    May

    29

    [AS1/2]鼠标双击

    • 0 Comments
    • Flash Platform

    AS3中默认有鼠标双击事件,但早期的AS1/2版本并没有相应的鼠标双击事件。自己编写了一个比较完美鼠标双击事件,综合了双击时二次鼠标坐标位置对比,以及二次鼠标点击的时间差:

    var mouseListener:Object = new Object();
    var orig_x:Number;
    var orig_y:Number;
    var double_click_time:Number = 200;//毫秒
    mouseListener.onMouseDown = function():Void  {
     if (orig_x == null) {
      orig_x = _xmouse;
      orig_y = _ymouse;
      mouse_move = false;
      trace("单击");
     } else {
      if (orig_x == _xmouse && orig_y == _ymouse) {
       double_click_fun();//双击事件
       orig_x = null;
       orig_y = null;
      }
     }
    };
    mouseListener.onMouseMove = function():Void  {
     mouse_move = true;
    };
    mouseListener.onMouseUp = function():Void  {
     if (mouse_move) {
      orig_x = null;
      orig_y = null;
     }
     mouse_move = false;
     var my_timed_process:Number = setTimeout(my_delayed_fun, double_click_time);
    };
    Mouse.addListener(mouseListener);
    function double_click_fun():Void {
     trace("双击");
    }
    function my_delayed_fun():Void {
     orig_x = null;
     orig_y = null;
    }