function imagecreatefrombmp($file) { $text = @file($file); if(!$text) { return false; } // checken of het plaatje echt wel bmp is (en 24 bits) $gegevens = getimagesize($file); if($gegevens[2] != 6 || $gegevens['bits'] != 24) { return false; } // nieuw, leeg plaatje aanmaken $im = @imagecreatetruecolor($gegevens[0], $gegevens[1]); if(!$im) { return false; } $rest = $gegevens[0] % 4; $text = implode("", $text); $tot = strlen($text) - $rest; $y = $gegevens[1]-1; $x = 0; $j = 0; $hex = array(); $rgb = array("b", "g", "r"); for($i = 54; $i < $tot; $i += 1) { $hex[$y][$x][$rgb[($j % 3)]] = ord($text{$i}); if(($j % 3) == 2) { if($x == $gegevens[0]-1) { $y--; $x = -1; $i += $rest; } $x++; } $j++; } for($y = 0; $y < $gegevens[1]; $y++) { for($x = 0; $x < $gegevens[0]; $x++) { $color = imagecolorallocate($im, $hex[$y][$x]["r"], $hex[$y][$x]["g"], $hex[$y][$x]["b"]); imagesetpixel($im, $x, $y, $color); } } return $im; } ?>
![]() |