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

특정 페이지로 찾아가는 함수 만들기

by 일코 2022. 8. 7.

아래아한글 API 중 GoTo라는 간편한 메서드가 있습니다.

쪽, 구역, 줄, 스타일, 조판부호 및 책갈피 등 다섯 개의 특성을 통해

인덱스를 입력하면 해당 라인으로 이동할 수 있는 간편한 대화상자를 제공하는데요.

사용방법은 대략 아래와 같습니다.

hwp.HAction.GetDefault("Goto", hwp.HParameterSet.HGotoE.HSet)  # 메서드 초기화
hwp.HParameterSet.HGotoE.SetSelectionIndex = 1  # "쪽"으로 찾아가기 설정
hwp.HParameterSet.HGotoE.HSet.SetItem("DialogResult", 3)  # 3쪽으로 이동
hwp.HAction.Execute("Goto", hwp.HParameterSet.HGotoE.HSet)  # 메서드 실행

파이썬 함수로 만들어보면 아래와 같습니다.

def goto_page(page):
    hwp.HAction.GetDefault("Goto", hwp.HParameterSet.HGotoE.HSet)
    hwp.HParameterSet.HGotoE.SetSelectionIndex = 1
    hwp.HParameterSet.HGotoE.HSet.SetItem("DialogResult", page)
    hwp.HAction.Execute("Goto", hwp.HParameterSet.HGotoE.HSet)

정의하고 실행해볼까요?

오늘 포스팅은 굉장히 간단하네요.

 

이런 함수는 언제 쓰일 수 있을까?

일반적으로 페이지를 통해 찾아가는 매크로는 사용을 많이 하는 편이 아닌데,

아래와 같은 경우 등 특정 케이스에는 유용하게 쓰일 수도 있을 것 같습니다.

 

1. 특정 페이지로 이동해서 문서를 수정해야 하거나, 해당 페이지만 간편하게 복사하고 싶은 경우

2. 모든 페이지를 순회하면서 작업하고 싶은데 while문은 되도록 기피하고 싶은 경우(?)

 

마치며

이번 포스팅은 굉장히 짧네요. 질문에만 간단히 답글을 포스팅으로 남기다 보니 맥락이 끊긴 느낌이 있어서,

시간이 나는 대로 플랫폼을 하나 정해서 강의 형식으로 정리를 좀 해 두고 싶습니다.

어떤 사이트가 좋을지 고민이네요.

여러분도 즐거운 회사생활 하시고

행복한 하루 보내시기 바랍니다!

 

신명진 드림

 

 

댓글