Personalmente io faccio così:
1 Rendo trasparente, in formato png, l'iimagine da applicare come mascherina.
2 creo due livelli con zindex, con css. Nel livello più superficiale metto la maschera, in quello sotto metto il resto. il codice risulta così:
codice:
<head>
bla bla bla
<style type="text/css">
#maschera {margin-left: *metti il valore che ti serve*;
margin-top: *metti il valore che ti serve*;
z-index: 2;}
#img_sotto {margin-left: *metti il valore che ti serve*;
margin-top: *metti il valore che ti serve*;
z-index: 1;}
</head>
<body>
<div id="main">
<div id="img_sotto">
[img]*percorso*[/img]
</div>
<div id="maschera">
[img]*percorso*[/img]
</div>
</div>
</body>
Ricorda di selezionare il tipo di position (absolute per #maschera e #img_sotto, relative per #main, a mio avviso). E ricorda anche che se hai un'immagine mappata o dei link che vengono coperti dall'immagine maschera, anche se nei "buchi" di essa, non funzionano perch coperti.
Detto questo sono un novellino, quindi aspetta ulteriori conferme da webmaster più esperti di me.