CI 묻고 답하기

제목 gd2 사용시 이미지 배경색 변경
카테고리 CI 2, 3
글쓴이 wowbwow 작성시각 2018/11/23 17:30:49
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 12694   RSS

안녕하세요.

코드이그나이터에서 GD2는 사용하여 이미지를 회전하고 크롭도 합니다.

그런데 원본이미지에서 영역이 벗어난 부분의 색상이 검은색으로 나오고 있습니다.

배경색을 흰색으로 변경을 하고 싶습니다.

system->libraries->image_lib.php에서

$white = imagecolorallocate($src_img, 255, 255, 255);

--> 기본으로 회전시키는 부분에 상기처럼 흰색으로 나오게 되어 있는 부분입니다.

   그런데 검은색으로 나옵니다.

그리고 크롭하는 부분에서

$bgColor = imagecolorallocate($dst_img , 255,255,255);  => 추가

imagefill($dst_img , 0,0 , $bgColor); => 추가

$copy($dst_img, $src_img, 0, 0, $this->x_axis, $this->y_axis, $this->width, $this->height, $this->orig_width, $this->orig_height);

하였지만 역시나 검은색으로 배경이 나옵니다.

첨부파일 확인해보시면 가능합니다.

원본이미지에서 원본이미지를 벗어난 배경색을 흰색으로 변경할 수 있는 방법이 있는지 조언을 구합니다.

감사합니다.

 


첨부파일 untitled.jpg (10.3 KB)
 다음글 CI 내에서 서버에 따라 segment 호출위치를 변경... (10)
 이전글 ORM 질문드릴것이 있습니다. (2)

댓글

변종원(웅파) / 2018/11/25 21:52:56 / 추천 0

해당부분 주석에 다음과 같이 써있네요. 원본이 투명png에서는 지원되지 않는다고 합니다. 확인해보세요.

This won't work with transparent PNG files so we are going to have to figure out how to determine the color of the alpha channel in a future release.
wowbwow / 2018/11/27 14:29:31 / 추천 0

웅파님 담변 감사합니다.

업로드된 이미지가 디카에서 찍은 jpg파일입니다.

일단은 한번 더 확인을 해보겠습니다. 

감사합니다.