Решил проблему намного проще. Считываем где находятся черные пиксели (уже на искаженном изображении), и красим их в нужный нам цвет.
PHP код:
//цвет фона
$background = 0xff0000;
// длина
$xx = 120;
// ширина
$yy = 60;
// заполняем черный фон, нашим цветом фона
for ($a=0; $a<$xx; $a++) {
for ($b=0; $b<$yy; $b++) {
if (imagecolorat($img2, $a, $b) == 0x000000) { imagesetpixel($img2, $a, $b, $background); }
}
}
P.S. Да но это надо делать с учетом того, что у Вас не должен под рандом попадаться черный цвет фона или шрифта, а то все замажется

Это не сложно обойти:
PHP код:
// все цвета на выбор, кроме черного
$background = imagecolorallocate(rand(1, 255), rand(1, 255), rand(1, 255));
Отписал, мб кому пригодиться в будущем.