
Gmagick::setimagetype() 함수는 이미지를 특정 형식으로 변경하는 함수입니다. 하지만, 이미지를 PNG 형식으로 변경할 때는 Gmagick::setimagetype(Gmagick::IMAGE_PNG)로 설정을 하지만, 이미지가 이전 형식으로 유지되는 것을 확인한 이유는 다음과 같습니다.
이미지 형식은 이미지를 생성할 때 결정되며, Gmagick::setimagetype() 함수로 이미지를 변경할 수는 있지만, 이미지를 생성할 때 이미지가 어떤 형식으로 저장되었는지에 따라 변경이 안되는 경우가 있습니다. 예를 들어, 이미지를 JPEG 형식으로 생성한 후 Gmagick::setimagetype(Gmagick::IMAGE_PNG)로 설정을 하면, 이미지가 PNG 형식으로 변경되지 않고 JPEG 형식으로 유지될 수 있습니다.
따라서, 이미지를 PNG 형식으로 변경하고 싶다면, 이미지를 생성할 때 PNG 형식으로 저장해야 합니다. 또는, 이미지를 생성한 후 Gmagick::readimage() 함수를 사용하여 이미지를 다시 읽어 들여야 합니다. 이때, Gmagick::readimage() 함수의 두 번째 인자로 PNG 형식을 지정하면, 이미지가 PNG 형식으로 변경됩니다.
예를 들어, 다음 코드를 사용할 수 있습니다.
#hostingforum.kr
php
$gm = new Gmagick();
$gm->readimage('image.jpg'); // 이미지를 JPEG 형식으로 읽어 들입니다.
$gm->setimagetype(Gmagick::IMAGE_PNG); // 이미지를 PNG 형식으로 변경합니다.
$gm->writeimage('image.png'); // 이미지를 PNG 형식으로 저장합니다.
이러한 방법으로 이미지를 PNG 형식으로 변경할 수 있습니다.
2025-05-15 03:51