표/셀 속성 중 '쪽 영역 안으로 제한' 속성에 대해 문의드립니다.

안녕하세요.

한글웹기안기를 이용하여 문서 및 양식을 작성하는 과정에서 표의 레이아웃과 관련된 문제로 문의드립니다.

현재 저희는 <html><table> 속성을 사용하여 표를 하드코딩 형태로 자바에서 작성한 후, 스크립트에서 문서 본문에 삽입하는 방식으로 작업하고 있습니다. 표의 모양과 형태는 style 속성을 이용해 조정하고 있으나, 표 안에 있는 내용의 글자 수가 많아질 경우 표 내용이 아래 페이지로 넘어가는 현상을 겪고 있습니다. 이 현상을 방지하기 위해, 여러 테스트 결과 '쪽 영역 안으로 제한’하는 속성을 사용하면 표가 아래로 넘어가지 않는 것을 확인했습니다.

이에 대해 몇 가지 질문이 있습니다.

  1. '쪽 영역 안으로 제한’하는 속성 값을 style 속성으로 하드코딩하여 사용할 수 있는 방법이 있는지 궁금합니다.

  2. 이 속성을 사용하면 표 내용이 셀 크기로 나누어지지 않고 셀 중간에서 잘리는 문제가 발생하고 있습니다. ‘셀 단위로 나눔’ 속성을 이용해도 이 문제가 해결되지 않고 있어, 크기에 셀 크기에 맞춰 내용이 자연스럽게 나눠지도록 하는 다른 속성이나 해결 방법이 있는지도 함께 문의드립니다.

  3. 혹시 위 방식이 불가하다면, 표 전체를 다음 페이지로 넘기지 않고 셀 단위로 나누어 넘길 수 있는 방법이 있는지 알려주시기 바랍니다.

이 문제에 대한 답변 부탁드립니다.

감사합니다.

안녕하세요.

표 내용이 아래 페이지로 넘어가는 현상은 “쪽 경계에서” 옵션만 정상적으로 설정하면,
“쪽 영역 안으로 제한” 옵션과는 무관할것 같습니다.

페이지 범위를 벗어났을 경우 셀 단위로 나누기 위해서는 “쪽 경계에서” 옵션에서
“셀 단위로 나눔” 옵션으로 설정하면 말씀하신대로 동작이 가능할것 같습니다.

간단한 예제 첨부하니 확인해보시기 바랍니다.
개발자센터 예제 페이지에서 확인 가능합니다.

// html 표 입력
HwpCtrl.SetTextFile("<table width='100%'><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr><tr><td>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br>1234<br></td></tr></table", "HTML", "insertfile", function () {
    // 개체 선택
    HwpCtrl.Run("SelectCtrlReverse");

    // 표 설정 변경 "쪽 경계에서" "셀 단위로 나눔" 설정
    var ctrl = HwpCtrl.CurSelectedCtrl;
    if (ctrl && ctrl.CtrlID == "tbl") {
       var tbset = ctrl.Properties;
       tbset.SetItem("PageBreak", 1);
       ctrl.Properties = tbset;
    }
})