※ Adobe Acrobat 에서 쓰던 일부 기능만 빼서 만들어 본건데 코딩 결과물은 Claude가 훨씬 낫습니다.
[LLM 프롬프트] - 무료 gemini, claude 버전으로도 제작 가능 (위의 파일은 각각의 llm으로 만든 다른 버전)
1단계 — 뼈대 요청
PyQt5 + PyMuPDF로 PDF 뷰어를 만들어줘. 창 왼쪽에 페이지 썸네일 목록, 오른쪽에 PDF 페이지를 렌더링하는 메인 뷰. 상단 툴바에 열기/저장/페이지 이동/줌 버튼. 전체 다크 테마(#1E1E2E 계열).
2단계 — 핵심 기능 추가
위 코드에 기능을 추가해줘. (1) 마우스 휠 줌, Ctrl+휠 줌 / 패닝 전환. (2) 페이지 끝에서 휠하면 다음/이전 페이지로 자동 전환. (3) 썸네일 목록에서 Ctrl/Shift 다중 선택 + 우클릭 메뉴로 삭제·PDF 추출.
3단계 — 서명/스탬프 기능
이미지를 서명으로 PDF 위에 올려놓을 수 있게 해줘. 마우스로 드래그 이동, 휠로 크기 조절. 드래그 중 잔상이 생기지 않도록 viewport 전체를 갱신하고, Qt 기본 선택 사각형은 완전히 억제해줘. 페이지를 넘겨도 서명 위치가 유지되어야 하고, 썸네일에도 반영되어야 해.
4단계 — 마감 품질
(1) Windows/macOS 타이틀바를 앱 배경색과 맞게 다크로 설정해줘. ctypes DWM API 사용. (2) 인쇄 기능 추가(QPrintDialog). (3) PDF 파일을 탐색기에서 드래그앤드롭으로 열거나 페이지를 삽입할 수 있게 해줘. (4) Windows 파일 연결 등록/해제 메뉴 추가.