php图片生成之类似棋盘

2011-01-06 阅读 29

这次要声称的图片比第一次的要复杂多了,但是,其实只是规则变化而已。大家看好了代码中的规则部分即可。drwaing部分和上篇日志中的是一样的。

先来看看生成的效果:

代码如下:

<pre class="brush:php;">    function drawing($arr = array()) {
 set_time_limit(0);
 $image = imagecreate(count($arr[0]), count($arr));
 imagecolorallocate($image, 255, 255, 255);
 $color = imagecolorallocate($image, 0, 0, 0);
 foreach ($arr as $i => $arr_line) {
  foreach ($arr_line as $j => $arr_pixel) {
   if( $arr_pixel == 1 ) {
    imagesetpixel($image, $i, $j, $color);    
   }
  }
 }
 header("Content-type: image/png");
 imagepng($image);
}

$size = 301;
$each_size = 30;
$arr = array();
for ($i = 0; $i$size; $i++) {
 $arr[$i] = array();
 for ($j = 0; $j$size; $j++) {
  if( $i % $each_size == 0 
   || $j % $each_size == 0 
   || ($i - $j) % $each_size == 0 
   || ($i + $j - $size) % $each_size == 0
   ) {
   $arr[$i][$j] = 1;
  } else {   
   $arr[$i][$j] = 0;
  }
 }
}

drawing($arr);
```

php 图像 图形 生成 imagepng header imagecolorallocate imagesetpixel imagecreate

更新于 2023年03月28日