php
PHP - Base64 문자열을 작은 이미지로 변환하는 함수
base64 문자열을 작은 이미지로 리사이즈한 문자열로 출력할 수 있습니다. 이렇게 하면 썸네일 이미지를 mysql에 저장할 수 있고, 또 리사이즈한 이미지를 변수에 담아 원하는 곳에 출력할 수 있습니다.
다음은 결과 이미지입니다.
<?php
function Thumbnail_String($string, $user_width=86, $user_height=null)
{
ob_start();
ob_flush();
flush();
$im = imagecreatefromstring( $string );
$orig_width = imagesx($im);
$orig_height = imagesy($im);
if($orig_width >= $user_width)
{
if(strlen($user_height) === 0)
{
$user_height=@round($orig_height*($user_width/$orig_width));
}
}
else
{
$user_width = $orig_width;
$user_height = $orig_height;
}
$im_new = imagecreatetruecolor( $user_width, $user_height );
imagecopyresampled($im_new, $im, 0, 0, 0, 0,
$user_width, $user_height, $orig_width, $orig_height);
imagepng($im_new);
imagedestroy($im);
imagedestroy($im_new);
$data = ob_get_contents();
ob_end_clean();
return $data;
}
$data64 = 'iVBORw0KGgoAAAANSUhEUgAAABwAAAASCAMAAAB/2U7WAAAABl'
. 'BMVEUAAAD///+l2Z/dAAAASUlEQVR4XqWQUQoAIAxC2/0vXZDr'
. 'EX4IJTRkb7lobNUStXsB0jIXIAMSsQnWlsV+wULF4Avk9fLq2r'
. '8a5HSE35Q3eO2XP1A1wQkZSgETvDtKdQAAAABJRU5ErkJggg==';
$data = Thumbnail_String(base64_decode($data64), 50);
echo "<img src='data:image/gif;base64, ".base64_encode($data)."'>";
?>
다음은 결과 이미지입니다.
0 댓글