반응형

안녕하세요. 

 

강의자료가 전부 PDF이다보니, PDF로 편집할 일이 있었습니다. 

 

Adobe 의 pdf를 사용하고 있는데, 

 

유료버젼을 사용해라...

무료버젼이다보니 할 수 있는게 별로 없었습니다. 

 

그래서 파이썬으로 필요한 부분만 만들어서 할려고 찾아보니 

http://egloos.zum.com/hogulab/v/6340633

 

[Python] PdfMerge - 여러 pdf 하나로 합치기 (GUI 5편 - 최종)

이제 "합치기"를 구현해보자. 해당 버튼의 코드는 다음과 같다. 123456789101112131415161718def merge_PDF(self): count = self.listWidget.count() print(count) output = PdfFileWriter() for x in range

egloos.zum.com

PDF를 합치는 ui 프로그램

ui로 위 사이트에서 깔끔하게 만들어 놓으셨습니다. 

 

코드를 하나씩 확인해보니까 designer로 ui를 만드시고 py로 변환하셨더라구요. 

 

그래서 문뜩 이거를 글로 쓰면 괜찮겠다 싶어 지금 작성하고 있습니다. 

 

우선 파이썬 UI 프로그램 중에 PyQt5가 대표적입니다. 

 

python -m pip install pyqt5

 

pyqt5를 깔게 되면 자동적으로 QT designer가 깔립니다.

 

QT Designer 프로그램입니다. 

아무거나 배치

위젯들을 그냥 아무렇게나 배치하고 저장하겠습니다. 

저장 폴더

폴더 만들어서 ui를 저장했습니다. 

 

cmd를 켜줍니다. 

 

change directory

cmd에서 ui파일이 있는 폴더로 경로를 변경해줍니다. 

 

python -m PyQt5.uic.pyuic -x (ui파일) -o ((py)

 

UI 파일(입력) : untitled.ui

py 파일(출력) : hi.py

 

py생성
ui to py

그러면 손쉽게 자신이 이쁘게 짜놓은 ui를 py로 변환했습니다. 

 

혹시 모르니 실행해보겠습니다.

 

잘 나옵니다.

728x90
반응형
반응형

안녕하세요.

 

PyQt5에 대해 알아보도록 하겠습니다. 오늘은 딱히 코딩은 없습니다.

 

기본틀

기본틀입니다. 제가 만든 프로그램에는 툴바가 없네요 ㅎ

 

https://doc.qt.io/qt-5/qmainwindow.html#details

 

QMainWindow Class | Qt Widgets 5.14.1

QMainWindow Class The QMainWindow class provides a main application window. More... Header: #include qmake: QT += widgets Inherits: QWidget Public Types enum DockOption { AnimatedDocks, AllowNestedDocks, AllowTabbedDocks, ForceTabbedDocks, VerticalTabs, Gr

doc.qt.io

pyqt5 레퍼런스입니다. 

 

Qt 메인 윈도우 프레임 워크
기본 창은 응용 프로그램의 사용자 인터페이스를 구축하기위한 프레임 워크를 제공합니다. Qt에는 기본 창 관리를위한 QMainWindow 및 관련 클래스가 있습니다. QMainWindow에는 QToolBars, QDockWidgets, QMenuBar 및 QStatusBar를 추가 할 수있는 자체 레이아웃이 있습니다. 레이아웃에는 모든 종류의 위젯이 차지할 수있는 중앙 영역이 있습니다. 

 

구글 번역 돌려보니 그렇다네요.

 

한 마디로 QMainWindow가 최상위 부모 클래스로 

 

그 안에 QCentralWidget, QDockWidget, QMainWindow 등등이 다 담겨 있습니다.

 

나중에 기회가 된다면 차근차근 설명하도록 하겠습니다. 

 

pyqt5로 무언가를 만들 때는 기본적으로 저는 이런 틀을 확실히 봐두는게 나을 것 같습니다. 

 

그 이후에 QLabel이나 QLineEdit 등을 실습해보는거죠.

 

전체적인 틀이 보일 때 무언가 만들고 싶으면은 어느정도 그림이 그려집니다. 

 

이 그림만 대충 이해하시면 적어도 기본적인거는 구현할 수 있다고 생각합니다.

 

그 외 부가적인 위젯들은 구글링하면 되는거니까요.

 

나중에 시간이 되면 천천히 pyqt5에 관해 하나씩 올리도록 하겠습니다. 

728x90
반응형

+ Recent posts