GetTextFile / SetTextFile을 사용하여 테이블 행을 복사해서 붙여넣는 방법

이 범주에서는 웹한글 기안기에 대한 다른 사용자의 기술 지원을 제공받을 수 있습니다.

  1. 웹한글 기안기의 API 사용/연동은 개발 가이드를 참조하세요.
  2. 일반 문의는 한글과컴퓨터 웹사이트의 고객 지원을 이용하세요.
  3. 개인정보가 포함되지 않도록 유의하세요. 게시글 또는 댓글에 개인정보가 포함된 내용이 있을 경우 게시물이 숨김처리 될 수 있습니다.

안녕하세요
웹한글기안기에서 테이블들의 셀을 복사해서 붙여넣는방법에 대하여 처리중에 있습니다.
혹시 아래내용에 대하여 구현이 가능한건지 확인 한번만 부탁드리겠습니다.

  1. 웹한글기안기에서 테이블의 행을 전체 선택
    => HwpCtrl.Run(‘TableCellBlockRow’)

  2. 전체선택한 셀을 HwpCtrl.GetTextFile 의 "saveBlock"을 사용하여 복사
    => HwpCtrl.GetTextFile(“HWP”, “saveblock”, function(data) {
    // 테이블의 제일 아래 행으로 커서이동…?
    // 아래에 append 하는 옵션으로 HwpCtrl.SetTextFile 추가 가능…?
    });

// 위 과정에서 (2) 항목의 block한 행이 복사되는거처럼 보이긴하지만,
GetTextFile 이후 실행하는 함수의 내용들이 구현가능한지 확인이 어려운 것 같습니다.
관련하여 setTextFile로 복사한 내용을 아래에 추가가 가능한지, 확인 한번만 부탁드리겠습니다.

감사합니다

안녕하세요.

GetTextFile, SetTextFile 사용시 표형태로 입력이 되어서 원하시는 동작이 진행되지 않을것 같습니다.

내보 복사/붙여넣기 기능을 사용하면 유사하게 동작 가능할것 같습니다.

HwpCtrl.Run('TableCellBlockRow'); // 행선택
HwpCtrl.Run('InternalCopy'); // 복사
HwpCtrl.Run('Cancel'); // 선택 취소
HwpCtrl.Run('TableColPageDown'); // 마지막 셀로 이동
HwpCtrl.Run('TableColBegin'); // 첫번째 열로 이동
HwpCtrl.Run('TableAppendRow'); // 행 추가

// 덮어쓰기 옵션으로 붙여넣기
var action = HwpCtrl.CreateAction("InternalPaste");
var set = action.CreateSet();
action.GetDefault(set);
set.SetItem("Option", 4);
action.Execute(set);
1개의 좋아요

안녕하세요
가이드주신 방법을 사용하여 적용했더니, 복사 대상인 행의 병합서식까지는 만들어지지는 않는 것 같습니다.
웹한글기안기 API상으로는 병합된 행을 복사해서 밑으로 추가하는 건 불가한걸까요?

그런 경우라면 덮어쓰기가 아니라 아래쪽으로 붙이기 옵션으로 동작하면 될것 같습니다.

HwpCtrl.Run('TableCellBlockRow'); // 행선택
HwpCtrl.Run('InternalCopy'); // 복사
HwpCtrl.Run('Cancel'); // 선택 취소
HwpCtrl.Run('TableColPageDown'); // 마지막 셀로 이동
HwpCtrl.Run('TableColBegin'); // 첫번째 열로 이동

// 아래쪽 옵션으로 붙여넣기
var action = HwpCtrl.CreateAction("InternalPaste");
var set = action.CreateSet();
action.GetDefault(set);
set.SetItem("Option", 3);
action.Execute(set);
1개의 좋아요

정상작동 확인하였습니다.
가이드주셔서 감사합니다!