gif.phpt

来自「PHP v6.0 For Linux 运行环境:Win9X/ WinME/ Wi」· PHPT 代码 · 共 146 行

PHPT
146
字号
--TEST--gif in/out--SKIPIF--<?php // $Id: gif.phpt,v 1.2 2005/12/26 21:41:37 pajoye Exp $	if (!extension_loaded('gd')) {		die("skip gd extension not available.");	}	if (!function_exists("imagegif") || !function_exists("imagecreatefromgif") || !function_exists('imagecreatefromjpeg')) {		die("skip gif support unavailable");	}?>--FILE--<?phpfunction check_box($r,$g,$b, $error=0) {	$cwd = dirname(__FILE__);	$im2 = imagecreatefromgif($cwd . '/test_gif.gif');	$c = imagecolorsforindex($im2, imagecolorat($im2, 8,8));	if ($error>0) {		$r_min = $r - $error; $r_max = $r + $error;		$g_min = $g - $error; $g_max = $g + $error;		$b_min = $b - $error; $b_max = $b + $error;		if (			($c['red'] >= $r_min || $c['red'] <= $r_max)			&&			($c['green'] >= $g_min || $c['green'] <= $g_max)			&&			($c['blue'] >= $b_min || $c['blue'] <= $b_max)			) {			return true;		} else {			return false;		}	} else {		if ($c['red']==$r && $c['green']==$g && $c['blue']==$b) {			return true;		} else {			return false;		}	}}$cwd = dirname(__FILE__);$im = imagecreate(10,10);$c = imagecolorallocate($im, 255,255,255);imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');if (check_box(255,255,255)) {	echo "<4 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<7; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<8 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<15; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<16 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<31; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<32 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<63; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<64 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<127; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<128 cols: ok\n";}$im = imagecreate(10,10);for ($i=0; $i<255; $i++) {	$c = imagecolorallocate($im, $i,$i,$i);}imagefilledrectangle($im, 5,5, 10,10, $c);imagegif($im, $cwd . '/test_gif.gif');$i--;if (check_box($i,$i,$i)) {		echo "<256 cols: ok\n";}$im = imagecreatefromjpeg($cwd . '/conv_test.jpeg');imagefilledrectangle($im, 5,5, 10,10, 0xffffff);imagegif($im, $cwd . '/test_gif.gif');imagegif($im, $cwd . '/test_gif_2.gif');if (check_box(255,255,255, 10)) {	echo ">256 cols: ok\n";}@unlink($cwd . "/test_gif.gif");?>--EXPECT--<4 cols: ok<8 cols: ok<16 cols: ok<32 cols: ok<64 cols: ok<128 cols: ok<256 cols: ok>256 cols: ok

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?