PHP는 내부적으로 이미지를 처리하는 기능은 포함되어있지않기때문에,
외부프로그램 혹은 외부 라이브러리으 힘을 빌려야하는데 그중 가장 많이 사용되는것이
GD 라이브러리이다.
GD가 깔려있는지 확인하기위해선
phpinfo() 를 실행시켰을때
다음과같이 나오면 GD를 사용할 수 있는 것
JPEG, PNG Support 부분에 enabled 이라고 되어있으면 사용가능
만약 dg가 없다면,
php.ini 파일을 열고 gd 검색 후, extension 되어있는 부분을 해제한다
extension_dir
gd같은 확장기능들이 존재하는 디렉토리의 경로도 확인하도록 하자
(운영체제마다 gd 라이브러리 설치하는 과정이 다를 수 있다)
이미지에 글쓰기
<?php
header("Content-type: image/png");
$string = $_GET['text'];
$im = imagecreatefrompng("button.png"); #이미지의 식별자를 지정해줌
$orange = imagecolorallocate($im, 60, 87, 156); #색깔에 대한 식별자
$px = (imagesx($im) - 7.5 * strlen($string)) / 2;
imagestring($im, 4, $px, 9, $string, $orange);
imagepng($im);
imagedestroy($im);
?>
header()
서버가 클라이언트로 전송하는 header안에 포함시킬 내용
제일 윗줄에 위치해야함 ( 공백도 안됨 ! 주의 )
$_GET
브라우저에 입력된 url상의 입력된 값이 담겨지도록 약속되어있음
imagecreatefrompng(파일이름)
png형식의 이미지를 불러옴
imagecolorallocate(이미지에 대한 식별자,R,G,B)
$px
imagesx(이미지)
이미지의 폭
strlen(글자)
문자의 길이
imagestring(글씨를 담기위한 캔버스, 폰트스타일, X축, Y축, 입력하고자하는 내용, 색깔)
imagepng(이미지)
png라고하는 파일을 전송
imagedestroy(이미지)
지금까지 사용했던 이미지에 대한 자원을 삭제
'PHP' 카테고리의 다른 글
[PHP] PHP와 데이터베이스 MYSQL확장 (0) | 2022.06.16 |
---|---|
[PHP] 문자열 다루기 (0) | 2022.06.16 |
[PHP] 파일 업로드 (0) | 2022.06.16 |
[PHP] 디렉토리 제어 (0) | 2022.06.15 |
[PHP] 파일 제어 (0) | 2022.06.15 |
댓글