본문 바로가기
아래아한글 자동화/python+hwp 중급

[파이썬-한/글] 현재 커서의 페이지를 알고 싶다?

by 일코 2020. 7. 30.

안녕하세요?

자동화작업을 할 때, 

표 안에 이미지나 장문의 텍스트를 삽입하다 보면 다음페이지로 넘어가버릴 수 있죠. 

("글자처럼 취급"한 상태면, 개체전체가 다음페이지로 넘어갈 거고, 그렇지 않으면 셀이 다음 페이지로 넘어가 있겠죠?)

이걸 방지하기 위해서 현재 표의 위치, 현재 캐럿의 위치를 알아보고 싶은 경우들이 있습니다.

어마어마한 분량의 작업을 자동화하면서 모니터를 계속 쳐다볼 수는 없는 노릇이잖아요?

아래는 캐럿(커서)의 현재 페이지를 출력하는 코드입니다.

import win32com.client as win32  # 모듈 임포트
hwp = win32.gencache.EnsureDispatch("HWPFrame.HwpObject")  # 한/글 열기
hwp.XHwpWindows.Item(0).Visible = True  # 숨김해제
hwp.RegisterModule("FilePathCheckDLL", "SecurityModule")  # 보안모듈 실행. 이건 다음 포스팅에
hwp.Open("c:\Users\User\Desktop\sample.hwp")  # 한/글파일 열기


# 첫 번째 방법
current_page = hwp.XHwpDocuments.Item(0).XHwpDocumentInfo.CurrentPage
print(current_page)


# 두 번째 방법
current_page = hwp.KeyIndicator()[3]  # 리턴되는 배열의 4번째 원소가 페이지 번호입니다.
print(current_page)

 

위 두 가지 중 하나를 통해서 현재 페이지를 파이썬으로 조회할 수 있으니까,

일부 셀이 다음페이지로 넘어가는지, 표 전체가 넘어가는지 등의 모니터링이 가능합니다.

여러분의 자동화 작업에 도움이 되었으면 좋겠습니다.

 

댓글