PHP imagecopy, удаляющий цвет png - PullRequest
1 голос
/ 30 марта 2012

Я пытаюсь сделать игру в блэкджек, которая учит подсчету карт. Визуальный компонент важен, поэтому у меня есть макет колоды карт и некоторый код, который копирует файл png каждой сданной карты в увеличенное изображение для отображения рук игрока и дилера. К сожалению, время от времени моя фотокопия копирует только пару png без цвета (в оттенках серого). Вот код для создания изображения, остальная часть кода, кажется, работает безупречно:

$cards = imagecreate( 360, 600 );

imagecopy( $cards, drawCard($dealershand[0]), 10, 10, 0, 0, 171, 254 );
imagecopy( $cards, @imagecreatefrompng("deckback.png"), 190, 10, 0, 0, 171, 254 );

imagecopy( $cards, drawCard($playershand[0]), 10, 336, 0, 0, 171, 254 );
imagecopy( $cards, drawCard($playershand[1]), 190, 336, 0, 0, 171, 254 );

Если вам нужно больше кода, просто дайте мне знать, и я могу предоставить его, но в основном «drawCard» содержит в основном оператор if для красной или черной карты, а затем переключатель для номинала и выводит @imagecreatefrompng( carddealt ) с картой Сдаваемое имя файла генерируется внутри как макет. $dealershand и $playershand - это просто массивы из двух карт, каждая с номиналом и достоинством масти.

Спасибо и извините, если на этот вопрос уже дан ответ.

1 Ответ

2 голосов
/ 30 марта 2012

Попробуйте использовать imagecreatetruecolor вместо imagecreate.

...