Сообщений: 104
Тем: 10
Зарегистрирован: Jun 2010
Репутация:
5
есть задача, изменить все !белые цвета на черный, нагуглил код меняющий черный на красный, но он почему-то отказывается работать ...
Код: $im = imagecreatefrompng('0.png');
$im_x = 179;
$im_y = 58;
$color = imageColorAllocate($im, 255, 0, 0);
for ($x = 0; $x <= $im_x; $x++){
for ($y = 0; $y <= $im_y; $y++){
$rgb = imagecolorat($im, $x, $y);
$colors = imagecolorsforindex($im, $rgb);
if ( $colors['red'] == 0 && $colors['blue'] == 0 && $colors['green'] == 0 ){
imageSetPixel($im, $x, $y, $color);
}
}
}
Header("Content-type: image/png");
imagepng($im);
браузер говорит Изображение «0.png» не может быть показано, так как содержит ошибки.
мб кто-то может подсказать, где тут ошибка ?
Сообщений: 509
Тем: 7
Зарегистрирован: Apr 2008
Репутация:
1,660
Смени mime на text/plain и посмотри текст ошибки
Сообщений: 1,317
Тем: 115
Зарегистрирован: Sep 2012
Репутация:
3,925
PHP код: <?php
$width = 120; // ширина
$height = 60; // высота
$color = 0xFFFFFF; // какой цвет будет заменять (белый)
$color_replace = 0x000000; // на какой цвет будем заменять (черный)
for ($a=0; $a<$width; $a++) {
for ($b=0; $b<$height; $b++) {
if (imagecolorat($img2, $a, $b) == $color) { imagesetpixel($img2, $a, $b, $color_replace); }
}
}
Сообщений: 104
Тем: 10
Зарегистрирован: Jun 2010
Репутация:
5
Неверный Написал:PHP код: <?php
$width = 120; // ширина
$height = 60; // высота
$color = 0xFFFFFF; // какой цвет будет заменять (белый)
$color_replace = 0x000000; // на какой цвет будем заменять (черный)
for ($a=0; $a<$width; $a++) {
for ($b=0; $b<$height; $b++) {
if (imagecolorat($img2, $a, $b) == $color) { imagesetpixel($img2, $a, $b, $color_replace); }
}
}
спасибо, но браузер твердит тоже самое - Изображение «0.png» не может быть показано, так как содержит ошибки.
Сообщений: 1,317
Тем: 115
Зарегистрирован: Sep 2012
Репутация:
3,925
zag Написал:спасибо, но браузер твердит тоже самое - Изображение «0.png» не может быть показано, так как содержит ошибки.
дайте скрин с браузера и выложите полный скрипт. Это уже ошибка где-то в вашей части кода.
Сообщений: 104
Тем: 10
Зарегистрирован: Jun 2010
Репутация:
5
0.png
код Код: <?php
$img2 = imagecreatefrompng('0.png');
$width = 179; // ширина
$height = 58; // высота
$color = 0xFFFFFF; // какой цвет будет заменять (белый)
$color_replace = 0x000000; // на какой цвет будем заменять (черный)
for ($a=0; $a<$width; $a++) {
for ($b=0; $b<$height; $b++) {
if (imagecolorat($img2, $a, $b) == $color) { imagesetpixel($img2, $a, $b, $color_replace); }
}
}
Header("Content-type: image/png");
imagepng($img2);
?>
скрин с браузера
Сообщений: 1,317
Тем: 115
Зарегистрирован: Sep 2012
Репутация:
3,925
10-14-2012, 01:26 PM
(Сообщение последний раз редактировалось: 10-14-2012, 01:28 PM Dementor.)
А заголовки Header("Content-type: image/png"); разве не в начале должны быть?
Добавлено через 1 минуту
И вот это вроде забыли добавить: imagedestroy($img2); после создания картинки
PHP код: <?php
imagepng($img2);
imagedestroy($img2); // добавлено
Сообщений: 104
Тем: 10
Зарегистрирован: Jun 2010
Репутация:
5
Неверный Написал:А заголовки Header("Content-type: image/png"); разве не в начале должны быть?
Добавлено через 1 минуту
И вот это вроде забыли добавить: imagedestroy($img2); после создания картинки
PHP код: <?php
imagepng($img2);
imagedestroy($img2); // добавлено
исправил, дописал, ничего не изменилось
Сообщений: 120
Тем: 3
Зарегистрирован: Feb 2010
Репутация:
38
Проверил у себя, код нормально работает!
добавь в начало скрипта, чтобы посмотреть все возникающие ошибки...
PHP код: <?php
error_reporting (E_ALL);
Сообщений: 104
Тем: 10
Зарегистрирован: Jun 2010
Репутация:
5
Arzamas Написал:Проверил у себя, код нормально работает!
добавь в начало скрипта, чтобы посмотреть все возникающие ошибки...
PHP код: <?php
error_reporting (E_ALL);
добавил, ошибок не показывает
какой у вас браузер\версия php?
|