C# - hwpctrl - 한글 컨트롤 액션 사용 방법 + 매뉴얼

 

한글 컨트롤에 대한 공식 오픈 문서

  • 아래의 문서를 다운받아서 찾아보거나 혹은 한글과 컴퓨터 공식 사이트의 개발 매뉴얼에서 찾아보면 된다.

HwpCtrlAPI.zip
1.15MB

https://www.hancom.com/board/devmanualList.do?gnb0=25&gnb1=81 

 

글로벌 소프트웨어의 리더, 한글과컴퓨터

 

www.hancom.com


액션 사용 방법

파라미터가 존재하는 경우

  • 액션 생성
    • HwpAction act : 액션 객체 생성, 객체명 지정
    • CreateAction("actionID") : 특정 액션 ID의 액션 생성
      • actionID는 위의 공식 사이트나 매뉴얼에서 확인 가능
HWPCONTROLLib.HwpAction act
	= (HwpAction)axHwpCtrl1.CreateAction("actionID");

 

  • 파라미터 셋 생성
    • HwpParameterSet set : 액션의 파라미터를 지정할 파라미터셋 객체 생성, 객체명 지정
    • Create() : 파라미터의 속성을 저장할 변수 선언, 액션 객체 이용
HWPCONTROLLib.HwpParameterSet set
	= (HwpParameterSet)act.CreateSet();

 

  • 파라미터 셋 기본값 설정
    • GetDefault(set) : 파라미터의 값을 설정할 메서드 선언, 액션 객체 이용
      • 단, 파라미터의 값을 넣고 설정하는 것이 아닌 선언 후 속성 값을 넣어줌
act.GetDefault(set);

 

  • 파라미터 속성 셋 생성
    • HwpParameterSet set : 파라미터의 속성을 지정할 파라미터 속성 셋 객체 생성, 객체명 지정
      • 파라미터 셋과 파라미터 속성 셋은 같은 데이터타 타입을 가짐
    • CreateItemSet("itemID", "setID") : 파라미터의 속성ID와 설정ID를 넣어줌, 파라미터 셋 객체 이용
HWPCONTROLLib.HwpParameterSet pSet
	= (HwpParameterSet)set.CreateItemSet("itemID", "setID");

 

  • 파라미터 속성 설정
    • SetItem("itemID", "value") : 속성의 속성ID와 설정값을 넣어줌,  파라미터 속성 셋 객체 이용
pSet.SetItem("itemID", "setID");

 

  • 파라미터 실행
    • Execute(set) : 설정한 액션을 파라미터와 함께 실행, 액션 객체 이용
act.Execute(set);

파라미터가 없는 경우

  • 액션 생성
    • HwpAction act : 액션 객체 생성, 객체명 지정
    • CreateAction("actionID") : 특정 액션 ID의 액션 생성
      • actionID는 위의 공식 사이트나 매뉴얼에서 확인 가능
HWPCONTROLLib.HwpAction act
	= (HwpAction)axHwpCtrl1.CreateAction("actionID");

 

  • 액션 실행
    • Run() : 파라미터가 없는 액션 실행
    • 파라미터가 존재하지 않으면 파라미터 셋과 파라미터 속성 셋을 선언하고 설정할 필요가 없음
      • 즉, 절차 모두 생략 가능
    • 액션만 실행하는 경우 Execute 메소드가 아닌 Run 메소드 사용
act.Run();

사용 예시

  • 파라미터가 있는 액션 사용 예시 - 페이지 용지 설정
    • 머릿말, 위쪽, 좌우 여백을 500으로 설정 (여백을 거의 없게)
// 편집 용지 액션 설정
HWPCONTROLLib.HwpAction pageSetupAction = (HwpAction)axHwpCtrl1.CreateAction("PageSetup");

// 편집 용지 파라미터 셋
HWPCONTROLLib.HwpParameterSet pageSet = (HwpParameterSet)pageSetupAction.CreateSet();

// 편집 용지 파라미터 기본값 설정
pageSetupAction.GetDefault(pageSet);

// 편집 용지 파라미터 속성 셋 설정
HWPCONTROLLib.HwpParameterSet pageItem = (HwpParameterSet)pageSet.CreateItemSet("PageDef", "PageDef");

// 편집 용지 속성 설정
pageItem.SetItem("ApplyTo", 3);
pageItem.SetItem("TopMargin", 500);
pageItem.SetItem("LeftMargin", 500);
pageItem.SetItem("RightMargin", 500);
pageItem.SetItem("HeaderLen", 500);

// 편집 용지 액션 실행
pageSetupAction.Execute(pageSet);

 

  • 파라미터가 없는 경우 사용 예시 - 파일 저장
// 한글 문서 파일 저장 액션 설정
HWPCONTROLLib.HwpAction actFileSave = (HwpAction)axHwpCtrl1.CreateAction("HwpCtrlFileSave");
// 문서 저장 액션 실행
actFileSave.Run();

 

  • 파일 저장 액션 응용 - 확인 상자를 누르면 저장되는 코드
// 저장 확인 대화 상자 출력
DialogResult dialogResultSave = MessageBox.Show("저장하시겠습니까?",
    "한글 문서 파일 저장",
    MessageBoxButtons.YesNo,
    MessageBoxIcon.Question);

// 저장 확인 시
if (dialogResultSave == DialogResult.Yes)
{
    // 한글 문서 파일 저장
    HWPCONTROLLib.HwpAction actFileSave = (HwpAction)axHwpCtrl1.CreateAction("HwpCtrlFileSave");
    actFileSave.Run();

    // 저장 완료 메시지 출력
    MessageBox.Show(
    filePath + "\n해당 위치에 파일이 저장되었습니다.",
    "한글 문서 파일 저장",
    MessageBoxButtons.OK,
    MessageBoxIcon.None);
}