Python으로 이미지 파일을 PDF 파일로 변환하기



Python으로 이미지 파일을 PDF 파일로 변환하기

이미지 파일을 PDF 파일로 변환하는 과정은 간단하고 유용합니다. 파이썬에서는 img2pdf라는 라이브러리를 사용하여 이 작업을 쉽게 수행할 수 있습니다. 이 글에서는 img2pdf 라이브러리의 설치 방법과 사용법을 자세히 소개하겠습니다.

 

👉 ✅ 상세 정보 바로 확인 👈

 

img2pdf 라이브러리 설치

설치 방법

img2pdf는 파이썬 3.x 이상에서만 지원되므로, 해당 버전을 확인한 후 설치해야 합니다. 설치는 아래의 명령어를 통해 할 수 있습니다.



bash
$ pip install img2pdf

 

👉 ✅ 상세 정보 바로 확인 👈

 

이미지 파일 경로 설정

파일을 변환하기 위해서는 이미지 파일의 경로를 알고 있어야 합니다. 이를 위해 파이썬의 기본 라이브러리인 os를 활용할 수 있습니다.

파일 경로 및 디렉터리 경로 반환

  • os.path.realpath(__file__): 현재 코드가 저장된 파일의 절대 경로를 반환합니다.
  • os.path.dirname(): 주어진 파일의 경로를 인자로 받아 해당 파일이 속한 디렉터리의 경로를 반환합니다.
  • os.listdir(): 지정한 디렉터리 내의 모든 파일과 디렉터리를 리스트로 반환합니다.

예제 코드

아래의 코드를 사용하여 이미지 파일을 PDF로 변환하는 과정을 살펴보겠습니다.

“`python
import os
from img2pdf import convert

출력 경로 설정

outpath1 = “C:\Users\IML\Desktop”
outpath2 = os.path.dirname(os.path.realpath(file))
outpath3 = os.path.dirname(os.path.realpath(‘file‘))

with open(“out.pdf”, “wb”) as f:
pdf_list = []

for file in os.listdir(outpath3):
    if file.endswith(".jpg"):
        pdf_list.append(file)

pdf = convert(pdf_list)
f.write(pdf)

“`

위 예제 코드에서 out.pdf 파일이 생성되는 경로는 outpath1, outpath2, outpath3 모두 동일한 디렉터리입니다. 사용자가 지정한 경로 또는 현재 파일의 경로를 통해 파일을 찾을 수 있습니다.

주의사항

파이썬 인터프리터에서 실행할 때는 문제가 없지만, Windows 애플리케이션으로 포팅할 경우 global name '__file__' is not defined라는 에러가 발생할 수 있습니다. 이는 포팅된 Windows의 .exe 파일이 파이썬의 글로벌 변수에 접근할 수 없기 때문입니다. 이 문제를 해결하기 위해서는 sys.argv[0] 또는 os.getcwd() 메소드를 사용하여 현재 소스 코드 파일이 속한 디렉터리 경로를 구할 수 있습니다.

실전 활용법

  1. 라이브러리 설치: pip install img2pdf 명령어로 설치합니다.
  2. 파일 경로 확인: os 라이브러리를 활용해 파일 경로와 디렉터리를 설정합니다.
  3. PDF 변환 코드 작성: 위의 예제 코드를 참고하여 변환 코드를 작성합니다.
  4. 파일 실행 및 확인: 코드 실행 후, 지정한 경로에 PDF 파일이 생성되었는지 확인합니다.

자주 묻는 질문

이미지 파일을 여러 개 변환할 수 있나요?

네, os.listdir()를 사용하여 특정 폴더 내의 모든 이미지 파일을 리스트에 추가한 후 변환할 수 있습니다.

PDF 파일의 출력 경로는 어떻게 설정하나요?

출력 경로는 open() 함수에서 지정할 수 있으며, 원하는 경로를 문자열로 입력하면 됩니다.

Windows 애플리케이션으로 포팅 시 주의할 점은?

포팅 시 __file__ 변수를 사용할 수 없으므로, 대신 sys.argv[0] 또는 os.getcwd()를 사용하여 경로를 구해야 합니다.

이전 글: 첫만남이용권 활용하기, 정부지원금과 함께하는 출산 준비