파이썬(Python)

[ 한글 자동화 ] 한글 열기(실행하기), 편집 용지 설정하기

카루루1007 2022. 12. 23. 16:26
728x90
반응형
SMALL
준 비

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의 값을 넣었습니다.

 

728x90
반응형
LIST