# Centering xml gallery images

**URL:** <https://forum.kirupa.com/t/centering-xml-gallery-images/154496>\
**Category:** Uncategorized\
**Created:** [July 10, 2005, 12:25pm UTC](https://forum.kirupa.com/t/centering-xml-gallery-images/154496 "2005-07-10T12:25:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Hana\_b](https://avatars.discourse-cdn.com/v4/letter/h/b9bd4f/32.png) [@Hana\_b](https://forum.kirupa.com/u/Hana_b)\
**Post date:** [July 10, 2005, 12:25pm UTC](https://forum.kirupa.com/t/centering-xml-gallery-images/154496/1 "2005-07-10T12:25:26Z")

</div>

hello ;  
ive just butchered myself a gallery together which loads different xml documents (with image references in them) into an empty movie clip on the main stage-  
however- the images are all different sizes, and I cant seem to modify the script so that they will center correctly- i know I need to preload them in order to get the correct size for each image and then reload and display so that the x and y coordinates are correct-  
im using this script from kirupa’s xml gallery tutorial- each different section of the gallery has this script attatched to the button that displays it-  
but im really stuck as to where to add a loop to \*\*\*\*\* the images.- my brain hurts:)  
I would attach the movie im using to show the whole thing but the files too large–

on (release) {  
function loadXML(loaded) {  
if (loaded) {  
xmlNode = this.firstChild;  
image = [];  
description = [];  
total = xmlNode.childNodes.length;  
for (i=0; i\<total; i++) {  
image\* = xmlNode.childNodes\*.childNodes[0].firstChild.nodeValue;  
description\* = xmlNode.childNodes\*.childNodes[1].firstChild.nodeValue;  
}  
firstImage();  
} else {  
content = “file not loaded!”;  
}  
}  
xmlData = new XML();  
xmlData.ignoreWhite = true;  
xmlData.onLoad = loadXML;  
xmlData.load(“music.xml”);  
// ///////////////////////////////////  
listen = new Object();  
listen.onKeyDown = function() {  
if (Key.getCode() == Key.LEFT) {  
prevImage();  
} else if (Key.getCode() == Key.RIGHT) {  
nextImage();  
}  
};  
Key.addListener(listen);  
previous\_btn.onRelease = function() {  
prevImage();  
};  
next\_btn.onRelease = function() {  
nextImage();  
};  
// ///////////////////////////////////  
p = 0;  
this.onEnterFrame = function() {  
filesize = picture.getBytesTotal();  
loaded = picture.getBytesLoaded();  
preloader.\_visible = true;  
if (loaded != filesize) {  
preloader.preload\_bar.\_xscale = 100\*loaded/filesize;  
} else {  
preloader.\_visible = false;  
if (picture.\_alpha\<100) {  
picture.\_alpha += 2;

```
	}
}

```

};  
function nextImage() {  
if (p\<(total-1)) {  
p++;  
if (loaded == filesize) {  
picture.\_alpha = 0;  
picture.loadMovie(image[p], 1);  
desc\_txt.text = description[0];  
picture\_num();  
}  
}  
}  
function prevImage() {  
if (p\>0) {  
p–;  
picture.\_alpha = 0;  
picture.loadMovie(image[p], 1);  
desc\_txt.text = description[0];  
picture\_num();  
}  
}  
function firstImage() {  
if (loaded == filesize) {  
picture.\_alpha = 0;  
picture.loadMovie(image[0], 1);  
desc\_txt.text = description[0];  
picture\_num();  
}  
}  
function picture\_num() {  
current\_pos = p+1;  
pos\_txt.text = current\_pos+" / "+total;  
}  
} :block:
