Reply to Re: changing image colors

Your name:

Reply:


Posted by Andy Hassall on 06/25/05 16:22

On Fri, 24 Jun 2005 16:22:52 +0200, "Michel" <no@spam.please> wrote:

>I wonder if what I have in mind is possible, maybe even not all that
>complicated:
>
>I have an image, which is a yellow circle. I want this yellow circle to
>change color by having 3 sliders (RGB) on a website and a button to process
>it.
>
>Is this at all possible and could someone point me in the right direction or
>a script that does this?

Depends when you want the image to change. The PHP answer is that you have to
submit the form back to PHP each time you want the image to change, so PHP can
regenerate it and send it back.

Another snag is that HTML forms don't include slider controls, so you'd have
to have something else like a series of radio buttons or an input box with a
number in it.

circle.php :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>circle</title>
</head>
<body>
<?php
$r = isset($_GET['r']) ? (int)$_GET['r'] : 255;
$g = isset($_GET['g']) ? (int)$_GET['g'] : 255;
$b = isset($_GET['b']) ? (int)$_GET['b'] : 0;
print "<img src='image.php?r=$r&amp;g=$g&amp;b=$b' alt=''>";
?>

<form method='get' action='circle.php'>
R<input type='text' name='r' value='<?php print $r; ?>' size='3'>
G<input type='text' name='g' value='<?php print $g; ?>' size='3'>
B<input type='text' name='b' value='<?php print $b; ?>' size='3'>
<input type='submit' value='process'>
</form>

</body>
</html>


image.php :

<?php
$im = imagecreate(96, 96);
$white = imagecolorallocate($im, 255, 255, 255);

$r = (int)$_GET['r'];
$g = (int)$_GET['g'];
$b = (int)$_GET['b'];

$fill = imagecolorallocate($im, $r, $g, $b);

imagefilledellipse($im, 48, 48, 96, 96, $fill);

header('Content-type: image/png');
imagepng($im);
?>

Another approach could be Javascript based, changing the src attribute of an
<img> tag in response to user input to call a PHP script with parameters
controlling the image colour.

--
Andy Hassall / <andy@andyh.co.uk> / <http://www.andyh.co.uk>
<http://www.andyhsoftware.co.uk/space> Space: disk usage analysis tool

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация