[python] ReportLab 페이지 설정

ReportLab은 파이썬에서 PDF 문서를 생성하기 위한 강력한 라이브러리입니다. 이 라이브러리를 사용하여 페이지의 크기, 여백 및 방향을 설정할 수 있습니다.

페이지 크기 설정

ReportLab에서는 다양한 종류의 페이지 크기를 지원합니다. 기본적으로 A4 크기의 페이지가 사용됩니다. 하지만 필요에 따라 다른 크기의 페이지를 사용할 수도 있습니다.

아래의 예제는 Letter 크기의 페이지를 생성하는 방법입니다.

from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas

c = canvas.Canvas("sample.pdf", pagesize=letter)
c.showPage()
c.save()

reportlab.lib.pagesizes 모듈에서 letter라는 변수를 import하여 Letter 크기의 페이지를 사용했습니다.

여백 설정

ReportLab에서는 페이지의 여백을 설정할 수 있습니다. 여백은 페이지 주변에 추가 공간을 만들어 주어 내용이 더욱 깔끔하게 표시되도록 합니다.

아래의 예제는 상단과 좌측에 1인치의 여백을 가진 페이지를 생성하는 방법입니다.

from reportlab.lib.pagesizes import letter
from reportlab.lib.units import inch
from reportlab.pdfgen import canvas

c = canvas.Canvas("sample.pdf", pagesize=letter)
c.setMargins(inch, inch, 0, 0)
c.showPage()
c.save()

reportlab.lib.units 모듈에서 inch 변수를 import하여 인치 단위를 사용했습니다. setMargins() 메서드를 사용하여 페이지의 여백을 설정했습니다.

페이지 방향 설정

ReportLab에서는 페이지의 방향을 설정할 수 있습니다. 기본적으로 세로 방향으로 페이지가 생성됩니다. 하지만 필요에 따라 가로 방향으로 페이지를 생성할 수도 있습니다.

아래의 예제는 가로 방향의 페이지를 생성하는 방법입니다.

from reportlab.lib.pagesizes import letter
from reportlab.lib.pagesizes import landscape
from reportlab.pdfgen import canvas

c = canvas.Canvas("sample.pdf", pagesize=landscape(letter))
c.showPage()
c.save()

reportlab.lib.pagesizes 모듈에서 landscape라는 변수를 import하여 페이지의 방향을 가로로 설정했습니다.

참고 자료