기초 셀을 만들고 넓이를 조정하며 양식을 그리고 있습니다.
셀의 크기가 가끔 씩 적용이 안되는 경우가 있습니다.
예시로 4x3 테이블을 그렸는데
A1셀에 넓이를 10을 주고, A2와 B2넓이를 5를 준다면 칸이 딱 맞게 생성될거라 생각했는데
A2셀의 넓이가 10.35이하로 줄지 않는 것 같습니다.
셀 넓이를 조정할 때 상하로 인접한 셀과 간섭이 있는 것 같은데 좋은 방법이 있을까 해서 문의드립니다.
var tbact = HwpCtrl.CreateAction("TableCreate");
var tbset = tbact.CreateSet();
tbact.GetDefault(tbset);
tbset.SetItem("WidthType", 2);
tbset.SetItem("WidthValue", MiliToHwpUnit(2));
tbset.SetItem("HeightType", 1);
tbset.SetItem("WidtValue", MiliToHwpUnit(16));
tbset.SetItem("Rows", 3);
tbset.SetItem("Cols", 4);
var colset = tbset.CreateItemArray('ColWidth', 4);
colset.SetItem(0, MiliToHwpUnit(45.4));
colset.SetItem(1, MiliToHwpUnit(45.4));
colset.SetItem(2, MiliToHwpUnit(45.4));
colset.SetItem(3, MiliToHwpUnit(45.4));
var rowset = tbset.CreateItemArray('RowHeight', 3);
rowset.SetItem(0, MiliToHwpUnit(9));
rowset.SetItem(1, MiliToHwpUnit(19));
rowset.SetItem(2, MiliToHwpUnit(5));
var tablePropSet = tbset.Item('TableProperties');
tablePropSet.SetItem('TreatAsChar', 1);
tbact.Execute(tbset);
function 셀넓이(n) {
HwpCtrl.Run("TableCellBlock");
HwpCtrl.Run("TableResizeCellLeft");
var ctbact = HwpCtrl.CreateAction("TablePropertyDialog");
var ctbset = ctbact.CreateSet();
ctbact.GetDefault(ctbset);
ctbset.SetItem("ShapeType", 3);
ctbset.SetItem("ShapeCellSize", 1);
var ctablePropSet = ctbset.CreateItemSet("ShapeTableCell", "Cell");
ctablePropSet.SetItem("Width", MiliToHwpUnit(n));
ctbact.Execute(ctbset);
}
셀넓이(10);
HwpCtrl.Run("TableLowerCell");
셀넓이(5);
HwpCtrl.Run("TableRightCell");
셀넓이(5);