less than 1 minute read

GD에서 imagettftext() 사용시 주의점

  • 현상
  • 큰 이미지에 imagettftext() 를 사용할 경우 이미지 생성속도가 매우 느려질 수 있다.
  • 약 2000건정도로 imagettftext() 를 사용해서 문자열을 적었는데 … 이미지 크기에 따라서 엄청나게 느려지더라(1분이 넘어가기도 함)

  • 해결책
  • 큰 이미지에 바로 적지 말고 작은 이미지를 만들어 imagettftext()를 사용해 글을 적은 후 그 작은 이미지를 큰 이미지에 붙여라.
  • 왜인지 모르겠지만
    작은 이미지에 사용한 imagettftext()가 휠씬 빠르고, 
    imagettftext() 보다 imagecopyresampled() 쪽이 훨씬 빠르다.
  • 24.x초에서 1.x로 시간 단축 효과를 보았음.

  • 주의점
  • imagettftext() 로 생성되는 글자열의 크기를 모르니깐, 이거 대충 계산해서 작은 이미지를 미리 만들어야한다… 이게 문제지.
  • imagettfbbox()로 글자열의 크기 정보를 알아올 수 있다.

🔗original-link

Updated: