Macromedia Flash - Áp dụng hiệu ứng Glow lên ảnh bằng mã AS

  1. Tác giả: LTTK CTV03
    Đánh giá: ✪ ✪ ✪ ✪ ✪



    [​IMG]


    Trong bài viết này chúng ta sẽ xem xét làm cách nào để áp dụng Glow filter lên bất kì bức ảnh nào bằng sử dụng mã AS. Bạn có thể sử dụng tác động này cho một số nút flash hay các banner...
    Thông qua bài học này, bạn sẽ học được cách làm thế nào để chuyển một bức ảnh bất kì vào trong một Movie Clip Symbol, cách để cho phép thực hiện một đoạn mã trên nó và nhiều thủ thuật khác.
    [​IMG]
    Bước 1
    Tạo một tài liệu flash mới. Nhấn tổ hợp phím Ctrl+J trên bàn phím (Document Properties) và đặt tốc đọ Frame rate của bạn là 30 và nhấn OK.
    Bước 2
    Bây giờ chọn File > Import > Import to Stage (Ctrl+R) và import bất kì bức ảnh nào vào trong flash stage.
    Bước 3
    Trong khi bức ảnh vẫn đang được chọn, nhấn phím F8 (Convert to Symbol) để chuyển đổi nó vào trong Movie Clip Symbol
    Bước 4
    Trong khi movie clip vừa mới tạo vẫn đang được chọn, vào Properties Panel ở bên dưới stage. Tại khung bên trái, bạn sẽ thấy trường Instance name, đặt tên cho Movie Clip này là image như hình dưới đây:
    Bước 5
    Gọi layer hiện tại là image. Nhấn kép vào tên mặc định của nó (Layer 1) để thay đổi lại tên. Nhấn Enter khi bạn gõ xong tên mới.
    Bước 6
    Tạo một layer mới phía trên layer image và đặt tên nó là action
    Bước 7
    Chọn frame đầu tiên của layer action và vào phần Action Script Panel (F9). Sau đó, điền đoạn mã này vào trong phần actions:

    Mã (Javascript):
    1. import flash.filters.*;
    2.  
    3. var gf:GlowFilter = new GlowFilter(0x70A146, 15, 18, 14, 3, 3, true, false);
    4. var ds:DropShadowFilter = new DropShadowFilter(2, 35, 0x70a146, 5, 5, 5, .8, 3, false, false, false);
    5.  
    6. image.filters = [gf, ds];
    7. image.onRollOver = function() {
    8. this.onEnterFrame = function() {
    9. gf.blurX += (80-gf.blurX)/5;
    10. gf.blurY = gf.blurX;
    11. image.filters = [gf, ds];
    12. };
    13. };
    14.  
    15. image.onRollOut = function() {
    16. this.onEnterFrame = function() {
    17. gf.blurX += (20-gf.blurX)/5;
    18. gf.blurY = gf.blurX;
    19. image.filters = [gf, ds];
    20. if (gf.blurX<21) {
    21. delete this.onEnterFrame;
    22. }
    23. };
    24. };
    Hãy kiểm tra đoạn movie của bạn ngay bây giờ (Ctrl +Enter)