Results 1 to 2 of 2

Thread: Image resizes itself in gallery

  1. #1
    Join Date
    Jan 2005
    Posts
    13
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Question Image resizes itself in gallery

    Hello,

    I'm using a crossfading gallery with images 500x330px real size.

    The movie window itself has this size, so it's OK. However, the photos inside the window are smaller and there's an unused black space around them (right and bottom)! I just can't figure out why they get resized smaller.

    Any opinion appreciated. Thanks


    The XML code:

    <gallery timer="2.3" order="random" fadetime="1.2" looping="yes" xpos="0" ypos="0">
    <image path="images/01.jpg" width="500" height="330" />
    <image path="images/02.jpg" width="500" height="330" />
    <image path="images/02.jpg" width="500" height="330" />
    </gallery>




    The script code:

    this._lockroot = true;
    // set random # variables - each must be 0 for first 'while' loop below
    var randomNum = 0;
    var randomNumLast = 0;

    // parent container
    var container_mc = this.createEmptyMovieClip("container",0);
    // movie clip containers
    container_mc.createEmptyMovieClip("loader1_mc",2);
    container_mc.createEmptyMovieClip("loader2_mc",1);

    // preload watcher
    this.createEmptyMovieClip("watcher_mc",100);

    // load xml
    images_xml = new XML();
    images_xml.ignoreWhite=true;
    images_xml.onLoad = parse;
    images_xml.load("images.xml");

    function parse(success) {
    if (success) {
    imageArray = new Array();
    var root = this.firstChild;
    _global.numPause = Number(this.firstChild.attributes.timer * 1000);
    _global.order = this.firstChild.attributes.order;
    _global.looping = this.firstChild.attributes.looping;
    _global.fadetime = Number(this.firstChild.attributes.fadetime);
    _global.xpos = Number(this.firstChild.attributes.xpos);
    _global.ypos = Number(this.firstChild.attributes.ypos);
    var imageNode = root.lastChild;
    var s=0;
    while (imageNode.nodeName != null) {
    imageData = new Object;
    imageData.path = imageNode.attributes.path;
    imageArray[s]=imageData;
    imageNode = imageNode.previousSibling;
    s++;
    }
    // place parent container
    container_mc._x = _global.xpos;
    container_mc._y = _global.ypos;
    // parse array
    imageArray.reverse();
    imageGen(imageArray);
    } else {
    trace('problem');
    }
    }

    // depth swapping
    function swapPlace(clip,num) {
    eval(clip).swapDepths(eval("container_mc.loader"+n um+"_mc"));
    }

    function loadImages(data,num) {
    if (i==undefined || i == 2) {
    i=2;
    createLoader(i,data,num);
    i=1;
    } else if (i==1) {
    createLoader(i,data,num);
    i=2;
    }
    }
    function createLoader(i,data,num) {
    thisLoader=eval("container_mc.loader"+i+"_mc");
    thisLoader._alpha=0;
    thisLoader.loadMovie(data[num].path);
    watcher_mc.onEnterFrame=function () {
    var picLoaded = thisLoader.getBytesLoaded();
    var picBytes = thisLoader.getBytesTotal();
    if (isNaN(picBytes) || picBytes < 4) {
    return;
    }
    if (picLoaded / picBytes >= 1) {
    swapPlace("container_mc.loader2_mc",1);
    alphaTween = new mx.transitions.Tween(thisLoader, "_alpha", mx.transitions.easing.Regular.easeOut,0,100,_globa l.fadetime,true);
    timerInterval = setInterval(imageGen,_global.numPause,data);
    delete this.onEnterFrame;
    }
    }
    }
    function imageGen(data) {
    // random, or sequential?
    if (_global.order=="random") {
    // choose random # between 0 and total number of images
    while (randomNum == randomNumLast) {
    randomNum = Math.floor(Math.random() * data.length);
    trace(randomNum);
    }
    loadImages(data,randomNum);
    randomNumLast = randomNum;
    } else if (_global.order=="sequential") {
    // start at 0, increment to total number of images, then drop back to zero when done
    if (p==undefined || p==data.length && _global.looping=="yes") { p=0; } else { break; }
    loadImages(data,p);
    p++;
    } else {
    trace ("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");
    }
    clearInterval(timerInterval);
    }
    stop();

  2. #2
    Join Date
    Aug 2005
    Location
    Other Side of My Monitor
    Posts
    3,494
    Thanks
    5
    Thanked 105 Times in 104 Posts
    Blog Entries
    1

    Default

    Sounds like it is trying to fit your images in the container. If your whole movie is the same size as the images then they don't fit. You have to account for margins, spacing, borders, anything else going on inside the clip or MC.

    Since your movie and the images are the same size, the images get reduced to fit in the allotted space, and equal, so if X is reduced 3% so is Y, etc. thus resulting in an even more enhanced "widescreen" effect (since the images aren't square)
    {CWoT - Riddle } {Freelance Copywriter} {Learn to Write}
    Follow Me on Twitter: @InkingHubris
    PHP Code:
    $result mysql_query("SELECT finger FROM hand WHERE id=3");
    echo 
    $result

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •