Помогите разобраться по библиотеке GD ? - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
admin@visavi.net (admin)admin@visavi.net (admin)Mon, 06 Jan 2025 08:43:30 +0300На сколько я помню, набор доступных кодов цветов зависит от формата кодирования. Тобишь, в каком нить gif нельзя установить значение R = 127 (на пример).
https://visavi.net/topics/43540/695800
Помогите разобраться по библиотеке GD ? АртурMon, 17 Apr 2017 12:26:40 +0300Сообщенияhttps://visavi.net/topics/43540/695800Есть php-код который принимает значения RGB от 0 до 255 и на основе этих значений генерирует обычное изображение 100 на 100 пикселей с заданным цветом.<br>
Вот сам код:<br>
<pre class="prettyprint">
<?php
$image=imagecreatetruecolor(100, 100);
if ($image && isset($_GET['red'])) {
if ($_GET['red'] < 0 ) $_GET['red'] = 0;
if ($_GET['red'] > 255) $_GET['red'] = 255;
if ($_GET['green'] < 0 ) $_GET['green'] = 0;
if ($_GET['green'] > 255) $_GET['green'] = 255;
if ($_GET['blue'] < 0 ) $_GET['blue'] = 0;
if ($_GET['blue'] > 255) $_GET['blue'] = 255;
$color = imagecolorallocate($image, $_GET['red'], $_GET['green'], $_GET['blue']);
imagefill($image, 0, 0, $color);
header("Content-type: image/gif");
imagegif($image);
imagedestroy($image);
}
?> </pre>
А вот я передаю те самые значения RGB в теле страницы:<br>
<pre class="prettyprint"><?php
echo '<img src="parser.php?red=127&green=0&blue=0">';
?></pre>
Чего я не пойму так это...<br>
Почему следующий код возвращает мне неверные значения RGB ?<br>
<pre class="prettyprint"><?php
$image=imagecreatefromgif('parser.gif');
if ($image) {
$colors = imagecolorat($image, 50, 50);
$array = imagecolorsforindex($image, $colors);
echo '<pre>';
print_r($array);
echo '</pre>';
imagedestroy($image);
}
?></pre>
А именно, выдает мне что:<br>
Red = 126, хотя я передал 127<br>
Green = 4, хотя должно быть 0<br>
И Blue = 4, хотя тоже должно быть НОЛЬ
https://visavi.net/topics/43540/695795
Помогите разобраться по библиотеке GD ? СуицидникMon, 17 Apr 2017 07:46:30 +0300Сообщенияhttps://visavi.net/topics/43540/695795