GD 를 이용한 테이블 포토 (imagecolorat) 정보
기타 GD 를 이용한 테이블 포토 (imagecolorat)
본문
저녁에 문득 생각나서 ..ㅋㅋ
이미지의 좌표별 색상값을 뽑아 내어 테이블로 똑같은 이미지를 만들수 있지 않을까하는 생각에 시도해보았습니다.
아래 이미지는 결과물입니다.
익스에서는 제대로 된값이 나오질 않더군요..^^
조그만 이미지 도 제대로 값을 출력해내지 못하고 있네요.
아래 이미지는 파폭에서 600 400 픽셀 이미지로 테스트 한 결과 입니다.
파폭도 완벽하게 출력해내지는 못합니다.
위쪽 파란색 테두리의 이미지가 원본이며 아래 이미지는 테이블로 만들어진 이미지 입니다.
아하 php 쏘스 입니다.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<?
$imgdir = "p.jpg"; // 이미지 경로를 적어주시면됩니다.
list($width, $height, $type, $attr) = getimagesize($imgdir); // 이미지 사이즈 및 타입을 구함.
$im = imagecreatefromjpeg($imgdir);
function getimgcolorat($x, $y){
global $type, $im;
$rgb = imagecolorat($im, $x, $y); // 이미지에서 좌표값의 색상을 뽑아온다.
//unset($im);
return dechex($rgb);
unset($rgb);
}
$color = array();
$c = 0;
for($y=0; $y<$height; $y++){
for($x=0; $x<$width; $x++){
$imgcolor = getimgcolorat($x, $y);
$key = $x.$y;
if($data[$imgcolor]){
$sellcolor[$key] = $data[$imgcolor];
}else{
$color[$c] = $imgcolor;
$data[$imgcolor] = $c;
$sellcolor[$key] = $c;
$c++;
}
unset($imgcolor);
}
}
unset($data);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
<title>Untitled Document</title>
<style type="text/css">
<!--
.ts {
width: 1px;
height: 1px;
}
-->
</style>
</head>
<body>
<table width="100%" border="0" cellspacing="10" cellpadding="10">
<tr>
<td bgcolor="#0099FF"><img src="<?=$imgdir?>" width="<?=$width?>" height="<?=$height?>"></td>
</tr>
<tr>
<td>
<table width="<?=$width?>" border="0" cellspacing="0" cellpadding="0">
<?
for($y=0; $y<$height; $y++){
echo "<tr>";
for($x=0; $x<$width; $x++){
$key = $x.$y;
$bgcolor = $color[$sellcolor[$key]];
echo "<td bgcolor=\"#{$bgcolor}\" class=\"ts\"></td>";
}
echo "</tr>";
}
?>
</table>
</td>
</tr>
</table>
</body>
</html>
2
댓글 3개


이미지 복제 시간은 많이 안 걸리나요?