개발자 Q&A

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

2025.07.20 21:30

ps_findfont 함수에 대한 질문

목록
  • Lisp전문가 2일 전 2025.07.20 21:30
  • 24
    1
저는 ps_findfont 함수를 사용하여 PostScript Type 1 font를 찾을 때 어려움을 겪고 있습니다.

ps_findfont 함수의 첫 번째 인수는 font 이름을 의미합니다. 하지만 font 이름이 정확하지 않거나, font 이름이 여러 개일 때 어떻게 처리해야 하는지 궁금합니다.

예를 들어, 다음 코드에서 "Helvetica"은 PostScript Type 1 font의 이름이 맞지만, "Arial"은 PostScript Type 1 font이 아닙니다. 이 경우 ps_findfont 함수는 어떻게 동작할까요?

python

from reportlab.graphics import renderPDF



# pdfdoc = renderPDF.drawPages("example.pdf")

# pdfdoc = renderPDF.drawPage("example.pdf")

# pdfdoc = renderPDF.drawPages("example.pdf", "example2.pdf")

# renderPDF.drawPage("example.pdf")

# renderPDF.drawPages("example.pdf", "example2.pdf")



from reportlab.pdfgen import canvas

from reportlab.lib.pagesizes import letter

from reportlab.lib.units import inch

from reportlab.graphics import renderPDF

from reportlab.graphics import renderPM

from reportlab.graphics import renderPS



c = canvas.Canvas("example.pdf", pagesize=letter)



# c.setFont("Helvetica", 24)

# c.drawString(1*inch, 10*inch, "Hello, World!")



# c.showPage()

# c.save()



# renderPDF.drawPage("example.pdf")

# renderPS.drawPage("example.pdf")



# ps_findfont("Helvetica", 24)

# ps_findfont("Arial", 24)  # 이 부분에 대한 궁금함



ps_findfont 함수가 여러 font 이름을 찾을 때 어떻게 동작하며, font 이름이 정확하지 않을 때 어떻게 처리하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  2일 전



    ps_findfont 함수는 PostScript Type 1 font를 찾을 때 사용하는 함수입니다. 첫 번째 인수는 font 이름을 의미합니다.

    font 이름이 정확하지 않거나, 여러 개일 때 ps_findfont 함수는 다음과 같이 동작합니다.

    1. font 이름이 정확하지 않으면, ps_findfont 함수는 font 이름을 찾을 수 없을 때 에러를 발생합니다.
    2. font 이름이 여러 개일 때, ps_findfont 함수는 첫 번째 인수에 해당하는 font를 찾습니다. 만약 첫 번째 인수가 여러 개의 font를 의미한다면, ps_findfont 함수는 첫 번째 인수에 해당하는 첫 번째 font를 찾습니다.

    예를 들어, 다음 코드에서 "Helvetica"은 PostScript Type 1 font의 이름이 맞지만, "Arial"은 PostScript Type 1 font이 아닙니다. 이 경우 ps_findfont 함수는 다음과 같이 동작합니다.

    #hostingforum.kr
    python
    
    from reportlab.pdfgen import canvas
    
    from reportlab.lib.pagesizes import letter
    
    from reportlab.lib.units import inch
    
    
    
    c = canvas.Canvas("example.pdf", pagesize=letter)
    
    
    
    try:
    
        ps_findfont("Helvetica", 24)
    
    except Exception as e:
    
        print(e)
    
    
    
    try:
    
        ps_findfont("Arial", 24)
    
    except Exception as e:
    
        print(e)
    
    


    이 코드에서 "Helvetica"은 PostScript Type 1 font의 이름이 맞기 때문에 ps_findfont 함수는 성공적으로 동작합니다. 하지만 "Arial"은 PostScript Type 1 font이 아니기 때문에 ps_findfont 함수는 에러를 발생합니다.

    만약 font 이름이 여러 개일 때, ps_findfont 함수는 첫 번째 인수에 해당하는 첫 번째 font를 찾습니다.

    #hostingforum.kr
    python
    
    from reportlab.pdfgen import canvas
    
    from reportlab.lib.pagesizes import letter
    
    from reportlab.lib.units import inch
    
    
    
    c = canvas.Canvas("example.pdf", pagesize=letter)
    
    
    
    ps_findfont("Helvetica,Arial", 24)
    
    


    이 코드에서 "Helvetica,Arial"은 두 개의 font 이름을 의미합니다. ps_findfont 함수는 첫 번째 인수에 해당하는 첫 번째 font를 찾기 때문에 "Helvetica" font를 찾습니다.

    2025-07-20 21:31

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

검색

게시물 검색