puoi usare le librerie gd o imagemagick che devono essere installate sul tuo server

su php.net puoi trovare degli esempi e la documentazione delle funzioni

ad esempio con
imagecreatetruecolor(100, 200)

crei un'immagine 100x200

con imagecopy ci puoi incollare sopra un'altra immagine e così via fino a comporre quello che vuoi