[python] PySimpleGUI를 사용하여 워드 프로세서 만들기

이번 포스트에서는 PySimpleGUI를 사용하여 간단한 워드 프로세서를 만들어보겠습니다. PySimpleGUI는 Python으로 GUI 애플리케이션을 만들기 위한 간편하고 직관적인 인터페이스를 제공하는 패키지입니다.

필요한 패키지 설치하기

먼저 PySimpleGUI 패키지를 설치해야합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.

pip install PySimpleGUI

또한, docx 패키지를 사용하여 워드 문서를 다룰 수 있도록 설치해야합니다.

pip install python-docx

코드 작성하기

main.py 파일을 생성하고 아래의 코드를 작성합니다.

import PySimpleGUI as sg
from docx import Document


def main():
    # GUI 레이아웃 설정
    layout = [
        [sg.Button('새 문서'), sg.Button('저장'), sg.InputText(key='-FILENAME-')],
        [sg.Multiline(key='-EDITOR-', size=(80, 20))]
    ]

    # 윈도우 생성
    window = sg.Window('워드 프로세서', layout)

    # 워드 문서 객체 생성
    document = Document()

    while True:
        event, values = window.read()

        if event == sg.WINDOW_CLOSED:
            break

        if event == '새 문서':
            window['-EDITOR-'].update('')
            document = Document()

        if event == '저장':
            filename = values['-FILENAME-']
            if filename:
                try:
                    document.save(filename)
                    sg.popup('저장되었습니다.', title='성공')
                except Exception as e:
                    sg.popup(f'저장 중 오류가 발생했습니다: {str(e)}', title='오류')
            else:
                sg.popup('파일 이름을 입력해주세요.', title='경고')

        if event == '-EDITOR-':
            # 편집기에 작성된 텍스트를 워드 문서에 반영
            document.paragraphs[0].text = values['-EDITOR-']

    window.close()


if __name__ == '__main__':
    main()

실행하기

위의 코드를 저장한 후 터미널에서 python main.py 명령어로 실행할 수 있습니다. 워드 프로세서 창이 열리면서 기본적인 기능들을 사용할 수 있게 됩니다.

결론

이번 포스트에서는 PySimpleGUI를 사용하여 간단한 워드 프로세서를 구현하는 방법에 대해 알아보았습니다. PySimpleGUI를 활용하면 Python에서 쉽게 GUI 애플리케이션을 만들 수 있으며, python-docx 패키지를 사용하여 워드 문서를 조작할 수 있습니다.

더 많은 기능을 추가하거나 사용자의 요구사항에 맞게 커스터마이징하여 워드 프로세서를 더욱 발전시킬 수 있습니다.