由于PHP的本色表参数只能支持256,为了能实现显示8色或更多的色带,我使用了参数传递的方法来实现。具体实现的代码如下:
1、生成色带图形的程序 transition.php <?php /* *功能:生成色带图形 *程序员:wlxz * 日期:2002-00-00 */
Header("Content-type: image/Png"); $im = ImageCreate(255,50); $bgcolor = ImageColorAllocate($im, 0, 0, 0);
$x = trim($_GET['x']); $y = trim($_GET['y']); $z = trim($_GET['z']);
for($i=0;$i<255;$i++){ $fontcol = ImageColorAllocate($im, $i*$x, $i*$y, $i*$z); ImageLine($im, $i, 0, $i, 50, $fontcol); }
ImagePng($im); ImageDestroy($im); ?>
2、调用生成多个不同的图形 view_color.php <?php /* *功能: *程序员:向黎 * 日期:2002-00-00 */ ?> <html> <head> <title></title> <meta name="Author" content="XIANG Li"> </head>
<body> <table> <tr> <td><!--色带1--> <input type="image" src="./transition.php?x=0&y=0&z=0"> </td> </tr> <tr> <td><!--色带2--> <input type="image" src="./transition.php?x=0&y=0&z=1"> </td> </tr> <tr> <td><!--色带3--> <input type="image" src="./transition.php?x=0&y=1&z=0"> </td> </tr> <tr> <td><!--色带4--> <input type="image" src="./transition.php?x=0&y=1&z=1"> </td> </tr> <tr> <td><!--色带5--> <input type="image" src="./transition.php?x=1&y=0&z=0"> </td> </tr> <tr> <td><!--色带6--> <input type="image" src="./transition.php?x=1&y=0&z=1"> </td> </tr> <tr> <td><!--色带7--> <input type="image" src="./transition.php?x=1&y=1&z=0"> </td> </tr> <tr> <td><!--色带8--> <input type="image" src="./transition.php?x=1&y=1&z=1"> </td> </tr>
</body> </html> |