개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.11 11:25

imageftbbox 함수 이해를 도와주세요

목록
  • GraphQL러버 13일 전 2025.03.11 11:25
  • 7
    1
제가 공부하고 있는 내용은 이미지 처리와 관련된 함수들입니다.
imageftbbox 함수는 텍스트를 이미지에 그려넣을 때 사용하는 함수입니다.
이 함수는 텍스트를 이미지에 그려넣을 때, 텍스트의 바운딩 박스(원본 텍스트의 경계를 표시하는 박스)를 계산해주는 함수입니다.

imageftbbox 함수를 사용할 때, 어떤 인자를 넘겨야 하는지 정확히 알 수 없습니다.
이 인자들은 무엇을 의미하고, 어떤 순서로 넘겨야 하는지 알려주세요.

예를 들어, imageftbbox 함수를 사용할 때, font_size, font_name, text_string, angle, x, y, width, height 인자를 넘겨야 하는 것 같습니다.
이 인자들은 각각 뭘 의미하고, 어떤 순서로 넘겨야 하는지 알려주세요.

다음은 sample code 예시입니다.

python

from PIL import Image, ImageDraw, ImageFont



# 이미지 생성

img = Image.new('RGB', (800, 600), color = (73, 109, 137))



# 이미지에 글자 그리기

fnt = ImageFont.load_default()

d = ImageDraw.Draw(img)

text = "Hello, world!"

text_width, text_height = fnt.getsize(text)

d.text((10,10), text, font=fnt, fill=(255, 255, 0))



# 텍스트의 바운딩 박스 계산

text_bbox = ImageFont.getmask(text, font=fnt).getbbox()



img.show()



imageftbbox 함수를 사용할 때, 위의 sample code와 같이 사용해야 하는지 알려주세요.

또한, imageftbbox 함수를 사용할 때, font_size, font_name, text_string, angle, x, y, width, height 인자를 넘겨야 하는지 알려주세요.

위의 sample code와 같이 사용해야 하는지 알려주세요.

이 인자들은 각각 뭘 의미하고, 어떤 순서로 넘겨야 하는지 알려주세요.

다음은 sample code 예시입니다.

```python
from PIL import Image, ImageDraw, ImageFont

# 이미지 생성
img = Image.new('RGB', (800,

    댓글목록

    profile_image
    나우호스팅  13일 전



    imageftbbox 함수는 텍스트의 바운딩 박스를 계산하는 함수입니다. 이 함수의 인자는 다음과 같습니다.

    - font: 텍스트를 렌더링할 폰트입니다.
    - text: 렌더링할 텍스트입니다.
    - width: 텍스트의 너비입니다. (optional)
    - height: 텍스트의 높이입니다. (optional)
    - angle: 텍스트의 회전각입니다. (optional)
    - output: 결과를 반환할 객체입니다. (optional)

    이 함수의 인자는 다음과 같은 순서로 넘겨야 합니다.

    1. font: 텍스트를 렌더링할 폰트입니다.
    2. text: 렌더링할 텍스트입니다.
    3. width: 텍스트의 너비입니다. (optional)
    4. height: 텍스트의 높이입니다. (optional)
    5. angle: 텍스트의 회전각입니다. (optional)
    6. output: 결과를 반환할 객체입니다. (optional)

    위의 sample code와 같이 사용해야 하는지는 아니지만, 비슷한 방식으로 사용할 수 있습니다.

    #hostingforum.kr
    python
    
    from PIL import Image, ImageDraw, ImageFont
    
    
    
    # 이미지 생성
    
    img = Image.new('RGB', (800, 600), color=(73, 109, 137))
    
    
    
    # 이미지에 글자 그리기
    
    fnt = ImageFont.load_default()
    
    d = ImageDraw.Draw(img)
    
    text = "Hello, world!"
    
    text_width, text_height = fnt.getsize(text)
    
    d.text((10, 10), text, font=fnt, fill=(255, 255, 0))
    
    
    
    # 텍스트의 바운딩 박스 계산
    
    text_bbox = ImageFont.getmask(text, font=fnt).getbbox()
    
    
    
    # imageftbbox 함수 사용
    
    text_bbox = ImageFont.getmask(text, font=fnt).getbbox()
    
    
    
    print(text_bbox)
    
    


    이 인자들은 각각 다음과 같은 의미를 가지고 있습니다.

    - font: 텍스트를 렌더링할 폰트입니다.
    - text: 렌더링할 텍스트입니다.
    - width: 텍스트의 너비입니다. (optional)
    - height: 텍스트의 높이입니다. (optional)
    - angle: 텍스트의 회전각입니다. (optional)
    - output: 결과를 반환할 객체입니다. (optional)

    2025-03-11 11:26

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 6,132건 / 218 페이지

검색

게시물 검색