준 비
win32com.client 모듈을 사용해 한글을 실행하고 조작
import win32com.client as win32
한글 실행하기
한글을 실행하기위해서는 win32com.client 모듈의 Dispatch()를 사용합니다.
hwp = win32.Dispatch("HWPFrame.HwpObject")
위 코드를 실행하면 눈에 보이지 않지만 이미 한글은 실행이 되고 있습니다.
한글파일이 실행되는 모습을 보고 싶으시다면
아래 코드를 추가하면 됩니다.
hwp.XHwpWindows.Active_XHwpWindow.Visible = True
위 두 줄의 코드만으로 한글은 실행이 됩니다.
편집용지 설정하기
한글을 실행하고 [ F7 ]을 누르면 편집용지를 설정할 수 있습니다.
예시로 설정할 부분입니다.
1. A4 용지를 주로 사용한다고 가정하고 용지의 종류는 별도로 건드리지 않겠습니다.
2. [ 용지 방향 ]을 설정해보고,
3. [ 제본 ]은 별도로 설정하지 않겠습니다.
4. 마지막으로 [ 용지 여백 ]을 설정하고, 그외 다른 부분은 건드리지 않겠습니다.
위 그림에서 여백은 제가 주로 사용하는 여백의 설정입니다.
여백을 설정하기 위해서는 아래 코드가 먼저 선행되어야 합니다.
hwp.HAction.GetDefault("PageSetup", hwp.HParameterSet.HSecDef.HSet)
위 코드는 [ 편집용지 설정 ]을 할 것이고, 그에 대한 파라미터를 설정할 것이다 라는 의미입니다.
위 코드가 실행되었다면, 마지막으로 아래의 코드도 같이 실행되어야 합니다.
hwp.HAction.Execute("PageSetup", hwp.HParameterSet.HSecDef.HSet)
결과적으로 코드는 아래 그림과 같이 됩니다.
hwp.HAction.GetDefault("PageSetup", hwp.HParameterSet.HSecDef.HSet)
<<설정 값 지정 코드>>
hwp.HAction.Execute("PageSetup", hwp.HParameterSet.HSecDef.HSet)
이제 용지의 여백 등을 설정하는 코드를 하나씩 알아보겠습니다.
option = hwp.HParameterSet.HSecDef
option.PageDef.Landscape = 1
option.PageDef.LeftMargin = hwp.MiliToHwpUnit(15.0)
option.PageDef.RightMargin = hwp.MiliToHwpUnit(15.0)
option.PageDef.TopMargin = hwp.MiliToHwpUnit(10.0)
option.PageDef.BottomMargin = hwp.MiliToHwpUnit(10.0)
option.PageDef.HeaderLen = hwp.MiliToHwpUnit(10.0)
option.PageDef.FooterLen = hwp.MiliToHwpUnit(10.0)
option.PageDef.GutterLen = hwp.MiliToHwpUnit(10.0)
설정값을 하나씩 살펴보면
[ Landscape ] 는 용지의 방향을 설정합니다.
[ 0 ]은 세로 [ 1 ]은 가로 방향입니다.
[ LeftMargin ] [ RightMargin ] [ TopMargin ] [ BottomMargin ] 은
각각 왼쪽, 오른쪽, 위, 아래의 여백을 의미합니다.
[HeaderLen ] [FooterLen ] 은
각각 머리말과 꼬리말을 의미합니다.
[ GutterLen ]은 제본을 의미합니다.
전체 코드
용지 방향은 가로로 설정을 해보았으며
각각의 수치는 확인하기 편하도록 1 부터 7의 값을 넣었습니다.
여기를 방문하시면 더 많은 파이썬 관련 자료를 확인할 수 있습니다.
'파이썬(Python)' 카테고리의 다른 글
[ Basic ] 파이썬 print() 함수 기초 사용법 (0) | 2023.01.01 |
---|---|
[ 파이썬 한글 자동화 ] 글자 크기 및 폰트(글자체), 진하게 설정하기 (0) | 2022.12.30 |
[ Tkinter ] 파이썬 Tkinter 위젯(버튼 등) 숨기기 / 보여주기(Hide / Show Widget in TKinter) (0) | 2022.12.12 |
[ Tkinter ] 파이썬 Tkinter 버튼 비활성화(Disable / Enable Button in TKinter) (0) | 2022.12.11 |
[ Basic ] Python import(파이썬 import) (1) | 2022.12.10 |