我一直在研究一个用颜色生成图像的web应用程序,有多个div工作,但加载时间很慢,直到图像加载它的时间,我想制作一个像图像一样的表有很多从图像中提取的颜色,并将其显示在网页中。我不知道使用哪种语言来创建除我的代码之外的颜色框,但是我想摆脱div并且可能使GUI不是HTML而是在浏览器中可用!
我的工作代码:
<style>
div {
display:inline-block;
width:2.6px;
height:2.6px;
}
</style>
<?PHP
$im = imagecreatefrompng('image.png');// open an image
$image = Array(); //array of colors
$image_x = 480; //image width
$image_y = 272; //image height
$x = 0; //x pixel in image
$y = 0; //y pixel im image
while ($x < $image_x && $y < $image_y) {
$start_x = $x;
$start_y = $y;
$color_index = imagecolorat($im, $start_x, $start_y);
$color_tran = imagecolorsforindex($im, $color_index);// make it human readable
array_push($image, join(',', $color_tran));
$x++;
if($x > $image_x-1) {
$x = 0;$y++;
}
}
$i = 0;
foreach ($image as $color) {
$rgb = explode(",", $color);
if($i > $image_x-1){
$i = 0;echo "<br>";
}
echo "<div style='background-color:rgb(".implode(",",array_slice($rgb, 0, -1)).");'></div>";
$i++;
}
?>