[python] ReportLab 표 목록 생성

ReportLab은 파이썬에서 PDF 문서를 생성하는 강력한 도구입니다. 이 글에서는 ReportLab을 사용하여 표 목록을 생성하는 방법을 알아보겠습니다.

1. 필요한 패키지 설치

ReportLab을 사용하기 위해 아래의 명령어로 필요한 패키지를 설치합니다.

pip install reportlab

2. 표 생성하기

ReportLab을 사용하여 표를 생성하는 예제 코드는 다음과 같습니다.

from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
from reportlab.platypus import Table, TableStyle
from reportlab.lib import colors

# PDF 생성
c = canvas.Canvas("table.pdf", pagesize=letter)

# 표 데이터
data = [['Name', 'Age', 'Country'],
        ['John', 25, 'USA'],
        ['Alice', 30, 'Canada'],
        ['Bob', 35, 'UK']]

# 표 생성
table = Table(data)
table.setStyle(TableStyle([
    ('BACKGROUND', (0, 0), (-1, 0), colors.gray),
    ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke),
    ('ALIGN', (0, 0), (-1, -1), 'CENTER'),
    ('FONTNAME', (0, 0), (-1, 0), 'Helvetica-Bold'),
    ('FONTSIZE', (0, 0), (-1, 0), 14),
    ('BOTTOMPADDING', (0, 0), (-1, 0), 12),
    ('BACKGROUND', (0, 1), (-1, -1), colors.beige),
    ('GRID', (0, 0), (-1, -1), 1, colors.black)
]))

# 표 그리기
table.wrapOn(c, 200, 200)
table.drawOn(c, 30, 600)

# PDF 저장
c.save()

위 코드에서는 canvas 모듈을 사용하여 PDF를 생성하고, Table을 생성하여 표 데이터를 추가합니다. 그리고 TableStyle을 사용하여 표의 스타일을 지정합니다. 마지막으로 table.drawOn() 메서드를 사용하여 표를 그린 후, canvas.save()를 호출하여 PDF를 저장합니다.

3. 실행 결과

위 코드를 실행하면, table.pdf라는 이름의 PDF 파일이 생성됩니다. 이 파일을 열어보면 다음과 같은 표 목록이 출력됩니다.

Name Age Country
John 25 USA
Alice 30 Canada
Bob 35 UK

표의 제목 행은 회색 배경과 흰색 텍스트로 스타일이 지정되어 있으며, 데이터 행은 베이지색 배경과 검은색 테두리가 적용되어 있습니다.

4. 참고 자료