Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что не так? При динамическом создании изображения PHP

Ржач Ученик (29), на голосовании 1 год назад
Вот код:

header ("Content-type: image/png");
$heightImage = 100;
$widthImage = 468;

$im = imagecreatetruecolor ($WidthImage, $HeightImage) or die('Error');
imagefill($im, 0, 0, 0xFFFFFF);

imagepng($im);
imagedestroy($im);

динамически создаётся картинка 16x16 белая и всё.
Голосование за лучший ответ
Даниил Профи (946) 1 год назад
В коде определены две переменные для высоты и ширины изображения: `$heightImage` и `$widthImage`. Однако в функции `imagecreatetruecolor` имена этих переменных записаны как `$WidthImage` и `$HeightImage`. Это создает две новые переменные с другими именами, а оригинальные переменные `$heightImage` и `$widthImage` никогда не используются.

Из-за этой опечатки функция `imagecreatetruecolor` использует значение по умолчанию 16 для высоты и ширины изображения. Это приводит к созданию и отображению маленького белого изображения, а не к желаемому большому изображению размером 100x468.

Чтобы исправить эту проблему, нужно изменить имена переменных, используемых в функции `imagecreatetruecolor`, на `$heightImage` и `$widthImage`. Это позволит корректно использовать значения 100 и 468 для высоты и ширины соответственно, и создать большое изображение, как и требуется.
РжачУченик (29) 1 год назад
не меняет роли...
header ("Content-type: image/png");
$height = 20011;
$width = 46118;

$im = imagecreatetruecolor ($width, $height) or die('Error');

тоже самое 16х16
Ржач, 46118 * 20011 * 3 = 2.5785 Гигабайт. У тебя картинка такого размера в лимит оперативной памяти не вписывается.
EVK IT Сервис К Мыслитель (5226) 1 год назад
Разные переменные:
 $im = imagecreatetruecolor ($widthImage, $heightImage) or die('Error'); 
Похожие вопросы