[python] PDF 파일에서 특정 텍스트 강조하기

PDF 파일은 일반적으로 텍스트, 이미지 및 다른 형식의 컨텐츠를 포함하는 문서입니다. 때로는 특정 텍스트를 강조하여 더 두드러지게 표시하고 싶을 수 있습니다. 이번 글에서는 Python을 사용하여 PDF 파일에서 특정 텍스트를 강조하는 방법을 알아보겠습니다.

필요한 패키지 설치하기

먼저, PDF 파일을 다루기 위해 PyPDF2 패키지를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.

pip install PyPDF2

코드 예시

이제 PyPDF2 패키지를 사용하여 PDF 파일에서 특정 텍스트를 강조하는 코드를 작성해 보겠습니다.

import PyPDF2

def highlight_text(pdf_path, target_text, output_path):
    with open(pdf_path, 'rb') as file:
        reader = PyPDF2.PdfReader(file)
        writer = PyPDF2.PdfWriter()

        for page in reader.pages:
            if target_text in page.extract_text():
                # 특정 텍스트가 존재하는 페이지에 대해 처리합니다.
                annot = PyPDF2.generic.pdf.DictionaryObject()
                annot.update({
                    '/Type': '/Annot',
                    '/Subtype': '/Highlight',
                    '/Rect': [0, 0, 0, 0],  # 강조되어야 할 영역
                    '/Contents': target_text,
                    '/P': page.indirect_ref
                })
                writer.add_annotation(annot)

        with open(output_path, 'wb') as output_file:
            writer.write(output_file)

# 실행 예시
pdf_path = 'example.pdf'
output_path = 'highlighted.pdf'
target_text = '특정 텍스트'

highlight_text(pdf_path, target_text, output_path)

위의 코드는 highlight_text 함수를 정의하고, 입력한 PDF 파일에서 target_text를 찾아 해당 영역을 강조하는 기능을 수행합니다. 결과는 output_path에 저장됩니다.

참고 자료

이 문서에서는 Python을 사용하여 PDF 파일에서 특정 텍스트를 강조하는 방법을 간략히 소개했습니다. PyPDF2 패키지의 다양한 기능과 메서드를 사용하여 더 다양한 작업을 수행할 수 있습니다. 문서에 관심이 있는 경우, 위의 참고 자료를 참조하시기 바랍니다.