Python을 PDF로 변환: .py 파일 내보내기에 대한 완벽 가이드

2025-12-02 06:19:34 zaki zou

Python .py 파일을 PDF 문서로 변환하는 방법

Python 스크립트는 개발 워크플로우, 문서화 파이프라인, 교육 과정 및 학술 환경에서 일반적으로 공유됩니다. Python(.py) 파일을 PDF로 변환하면 일관된 서식을 보장하고, 배포 중 가독성을 향상시키며, 보관, 인쇄 또는 출판에 적합한 편집 불가능한 버전의 코드를 제공합니다.

이 가이드는 온라인 도구, IDE PDF로 인쇄 워크플로우, 구문 강조 기능이 있거나 없는 Python 자동 변환, 배치 처리 솔루션을 포함하여 Python 코드를 PDF로 변환하는 모든 실용적인 방법을 설명합니다. 각 방법에는 상세한 단계, 기술 노트 및 필요한 경우 설치 지침이 포함되어 있습니다.

개요:


1. 온라인 Python-PDF 변환기

온라인 도구는 소프트웨어를 구성하지 않고 .py 파일을 PDF로 변환하는 가장 빠른 방법을 제공합니다. 단순히 코드의 읽기 가능한 PDF 버전이 필요한 사용자에게 편리합니다.

온라인 변환기 작동 방식

.py 파일을 업로드하면 서비스가 콘텐츠를 처리하고 코드 들여쓰기 및 기본 서식을 유지하는 PDF를 출력합니다. 일부 플랫폼은 글꼴 크기, 페이지 여백 및 줄 번호와 같은 선택적 설정을 제공합니다.

예: CodeConvert AI로 Python 코드를 PDF로 변환

단계

  1. CodeConvert AI(브라우저 기반 코드 변환 플랫폼)로 이동합니다.

  2. .py 파일을 업로드하거나 편집기에 코드를 붙여넣습니다.

  3. PDF 생성을 선택하여 PDF 문서를 생성합니다.

    CodeConvert AI Python-PDF 출력

  4. 팝업 메뉴에서 문서를 PDF 파일로 인쇄합니다.

    문서를 PDF 파일로 인쇄

장점

  • 설치나 설정이 필요 없습니다.
  • 운영 체제와 장치 전반에서 작동합니다.
  • 빠른 변환 및 가벼운 요구 사항에 적합합니다.

제한 사항

  • 기밀 또는 독점 스크립트를 업로드하지 마십시오.
  • 서식 옵션은 서비스에 따라 다릅니다.
  • 구문 강조 품질은 플랫폼마다 다릅니다.

2. IDE "PDF로 인쇄"를 통해 Python을 PDF로 변환

VS Code, PyCharm, Sublime TextNotepad++를 포함한 대부분의 개발 편집기는 운영 체제의 인쇄 하위 시스템을 통해 파일을 PDF로 내보내는 것을 지원합니다.

작동 방식

인쇄할 때 IDE는 내부 구문 강조 엔진을 사용하여 코드를 렌더링하고 스타일이 지정된 출력을 OS로 전달하여 PDF를 생성합니다.

단계 (PyCharm 예)

  1. Python 파일을 엽니다.

  2. 파일 → 인쇄로 이동합니다.

    PyCharm Python 코드 인쇄

  3. 선택적으로 페이지 설정(여백, 방향, 크기 조정)을 조정합니다.

    PyCharm 인쇄 설정

  4. 프린터로 Microsoft Print to PDF를 선택하고 PDF 문서를 저장합니다.

    Microsoft Print to PDF를 사용하여 Python을 PDF로 인쇄

장점

  • 깨끗하고 읽기 쉬운 서식.
  • 구문 강조가 일반적으로 유지됩니다.
  • 추가 라이브러리가 필요 없습니다.

제한 사항

  • 줄 바꿈이나 레이아웃에 대한 제어가 최소화됩니다.
  • 배치 워크플로우용으로 설계되지 않았습니다.
  • 출력 품질은 IDE 테마에 따라 다릅니다.

3. Python 스크립트 기반 PY-PDF 변환 (자동화 및 사용자 정의 가능)

Python 기반 도구는 .py 파일을 PDF로 변환하는 유연한 방법을 제공하며, 자동화된 파이프라인, 일관된 서식 및 선택적 구문 강조를 지원합니다.
다음 방법을 사용하기 전에 필요한 구성 요소를 설치하십시오.

필수 패키지

Free Spire.Doc for Python – PDF 내보내기 처리

pip install spire.doc.free

Pygments – 구문 강조된 HTML 생성

pip install pygments

3.1 방법 A: 직접 텍스트-PDF (구문 강조 없음)

이 방법은 .py 파일을 일반 텍스트로 읽고 PDF에 씁니다. 구문 강조가 필요하지 않을 수 있는 간단한 내보내기, 문서 스냅샷 및 내부 보관에 적합합니다.

예제 코드

from spire.doc import Document, FileFormat, BreakType, Color, LineSpacingRule, LineNumberingRestartMode, TextRange

# Read the Python code as a string
with open("Python.py", "r", encoding="utf-8") as f:
    python_code = f.read()

# Create a new document
doc = Document()

# Add the Python code to the document
section = doc.AddSection()
paragraph = section.AddParagraph()
for line_number, line in enumerate(python_code.split("\n")):
    tr = paragraph.AppendText(line)
    # Set the character format
    tr.CharacterFormat.FontName = "Consolas"
    tr.CharacterFormat.FontSize = 10.0
    if line_number < len(python_code.split("\n")) - 1:
        paragraph.AppendBreak(BreakType.LineBreak)

# Optional settings
# Set the background color and line spacing
paragraph.Format.BackColor = Color.get_LightGray()
paragraph.Format.LineSpacingRule = LineSpacingRule.Multiple
paragraph.Format.LineSpacing = 12.0 # 12pt meaning single spacing
# Set the line numbering
section.PageSetup.LineNumberingStartValue = 1
section.PageSetup.LineNumberingStep = 1
section.PageSetup.LineNumberingRestartMode = LineNumberingRestartMode.RestartPage
section.PageSetup.LineNumberingDistanceFromText = 10.0

# Save the document to a PDF file
doc.SaveToFile("output/Python-PDF.docx", FileFormat.Docx)
doc.SaveToFile("output/Python-PDF.pdf", FileFormat.PDF)

작동 방식

이 방법은 AppendText()를 사용하여 Python 코드를 줄 단위로 삽입하고, AppendBreak()로 줄 바꿈을 추가하며, SaveToFile()을 통해 최종 문서를 내보냅니다.

아래는 이 방법을 적용한 후의 출력 효과입니다:

Spire.Doc를 사용하여 Python을 PDF로 변환

PDF 문서에 텍스트를 사용자 정의하고 삽입하는 방법에 대한 자세한 내용은 Python으로 PDF 문서에 텍스트 추가하기 가이드를 참조하십시오.

3.2 방법 B: 구문 강조된 PDF (HTML → PDF)

튜토리얼이나 읽기 쉬운 문서를 제작할 때 구문 강조는 키워드를 구별하고 전반적인 명확성을 향상시키는 데 도움이 됩니다. 이 방법은 Pygments를 사용하여 인라인 스타일 HTML을 생성한 다음 문에 HTML을 삽입합니다.

예제 코드

from spire.doc import Document, FileFormat, ParagraphStyle, IParagraphStyle
from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

def py_to_inline_html(py_file_path):
    with open(py_file_path, "r", encoding="utf-8") as f:
        code = f.read()

    formatter = HtmlFormatter(noclasses=True, linenostart=1, linenos='inline') # Line numbers are optional
    inline_html = highlight(code, PythonLexer(), formatter)
    return inline_html

html_result = py_to_inline_html("Python.py")

doc = Document()
section = doc.AddSection()
paragraph = section.AddParagraph()

# Insert formatted HTML
paragraph.AppendHTML(html_result)

doc.SaveToFile("output/Python-PDF-Highlighted.pdf", FileFormat.PDF)

작동 방식

Pygments는 먼저 코드를 인라인 CSS 기반 HTML로 서식 지정합니다. HTML은 AppendHTML()을 통해 추가되고, 완성된 문서는 SaveToFile()을 사용하여 내보내집니다.

아래는 이 스타일링된 HTML 방법으로 생성된 시각적 결과입니다:

Pygments와 Spire.Doc를 사용하여 서식이 지정된 Python을 PDF로 변환

3.3 배치 변환 (폴더-PDF 워크플로우)

한 번에 여러 .py 파일을 변환하려면 디렉토리의 모든 파일을 처리하고 PDF로 저장하는 짧은 루프만 필요합니다.

예제 코드 (최소 배치 처리)

import os

input_folder = "scripts"
output_folder = "pdf-output"
os.makedirs(output_folder, exist_ok=True)

for file in os.listdir(input_folder):
    if file.endswith(".py"):
        py_path = os.path.join(input_folder, file)
        pdf_path = os.path.join(output_folder, file.replace(".py", ".pdf"))

        # Call your chosen conversion function here
        convert_py_to_pdf(py_path, pdf_path)

참고

  • 이전에 정의된 변환 함수를 재사용합니다.
  • 각 .py 파일을 동일한 파일 이름의 PDF로 자동 저장합니다.
  • 일반 텍스트 및 구문 강조 방법 모두에 작동합니다.

자세한 내용은 "Python에서 HTML을 PDF로 직접 변환" 가이드를 참조할 수도 있습니다.


4. 비교표: 올바른 변환 방법 선택

방법 장점 단점 최적 사용 사례
온라인 변환기 빠름, 설치 불필요 개인 정보 보호 문제, 제한된 서식 작고 민감하지 않은 파일
IDE PDF로 인쇄 쉬움, 구문 유지(종종) 자동화 없음 단일 파일 변환
Python 스크립트 (직접/HTML) 자동화, 배치 처리, 사용자 정의 스크립팅 지식 필요 문서, 튜토리얼, 파이프라인

5. 명확하고 읽기 쉬운 PDF 코드 생성을 위한 모범 사례

Python 코드 PDF가 읽기 쉽고, 잘 서식 지정되었으며, 전문적으로 보이도록 다음 사례를 따르십시오.

고정 폭 글꼴 사용

고정 폭 글꼴은 들여쓰기와 정렬을 유지하여 코드를 더 쉽게 읽고 디버깅할 수 있도록 합니다.

긴 줄 및 줄 바꿈 관리

가로 스크롤 및 잘린 코드 줄을 방지하기 위해 줄 바꿈을 활성화하거나 페이지 여백을 조정하십시오.

일관된 서식 유지

특히 배치 처리에서 여러 PDF에 걸쳐 글꼴 크기, 색상, 간격 및 페이지 레이아웃을 일관되게 유지하십시오.

논리적 코드 블록 유지

가독성과 구조를 유지하기 위해 함수, 루프 또는 여러 줄 문장이 페이지에 걸쳐 분할되지 않도록 하십시오.

파일 이름 및 폴더 구조 정리

배치 내보내기, 자동화된 문서 또는 프로젝트 아카이브에 대해 체계적인 파일 이름과 폴더 구성을 사용하십시오.


6. 결론

Python(.py) 파일을 PDF로 변환하면 코드 서식을 유지하고 가독성을 향상시키며 공유 또는 보관용 문서를 만드는 신뢰할 수 있는 방법을 제공합니다. 문서, 튜토리얼, 교육 목적 또는 개인적인 용도로 사용하든, 이러한 방법을 통해 개발자, 팀 및 개인 사용자는 Python 소스 코드에서 일관되고 전문적인 PDF 파일을 생성할 수 있습니다.


7. Python 파일을 PDF로 변환하는 것에 대한 자주 묻는 질문

아래는 개발자, 교육자 및 학생들이 Python 파일을 PDF로 변환하는 것에 대해 묻는 일반적인 질문입니다. 이 답변은 이 가이드에서 다룬 방법을 기반으로 합니다.

Python 코드 파일(.py)을 PDF로 어떻게 바꾸나요?

CodeConvert AI와 같은 온라인 변환기, IDE PDF로 인쇄 기능 또는 Spire.Doc를 사용한 Python 기반 스크립트를 사용하여 Python .py 파일을 PDF로 변환할 수 있습니다. 워크플로우, 서식 요구 사항 및 구문 강조 필요 여부에 따라 방법을 선택하십시오.

Python Jupyter 노트북을 PDF로 어떻게 변환하나요?

Jupyter 노트북(.ipynb)의 경우 LaTeX가 설치되어 있으면 내장된 파일 → 다른 이름으로 다운로드 → PDF 옵션을 사용하거나, 먼저 노트북을 .py 스크립트로 내보낸 다음 이 가이드에 설명된 Python-PDF 변환 방법을 적용할 수 있습니다.

PDF에서 구문 강조가 유지되도록 하려면 어떻게 해야 하나요?

구문 색상과 서식을 유지하려면 Pygments를 사용하여 코드를 인라인 CSS 스타일이 있는 HTML로 변환한 다음 AppendHTML()을 사용하여 PDF 문서에 추가하십시오. 이렇게 하면 키워드, 주석 및 들여쓰기가 유지되어 더 명확하고 전문적인 출력이 가능합니다.

Windows에서 Python을 사용하여 텍스트 파일을 PDF로 어떻게 변환하나요?

Windows에서는 Spire.Doc와 같은 무료 Python 라이브러리를 사용하여 .txt 또는 .py 파일을 읽고 PDF에 쓴 다음 선택적으로 스타일을 지정할 수 있습니다. IDE PDF로 인쇄는 코딩 없이 단일 파일을 변환하는 또 다른 옵션입니다. 배치 스크립트는 일관된 서식을 유지하면서 여러 파일을 자동화할 수 있습니다.

참고 항목

Coupon Code Copied!

Christmas Sale

Celebrate the season with exclusive savings

Save 10% Sitewide

Use Code:

View Campaign Details