/** * returns the XWPFRow which belongs to the CTRow row * if this row is not existing in the table null will be returned */ public XWPFTableRow getRow(CTRow row) { for (int i = 0; i < getRows().size(); i++) { if (getRows().get(i).getCtRow() == row) { return getRow(i); } } return null; }
/** * get the TableCell which belongs to the TableCell */ public XWPFTableCell getTableCell(CTTc cell) { XmlCursor cursor = cell.newCursor(); cursor.toParent(); XmlObject o = cursor.getObject(); if (!(o instanceof CTRow)) { return null; } CTRow row = (CTRow) o; cursor.toParent(); o = cursor.getObject(); cursor.dispose(); if (!(o instanceof CTTbl)) { return null; } CTTbl tbl = (CTTbl) o; XWPFTable table = getTable(tbl); if (table == null) { return null; } XWPFTableRow tr = table.getRow(row); if (tr == null) { return null; } return tr.getTableCell(cell); }
/** * returns the XWPFRow which belongs to the CTRow row * if this row is not existing in the table null will be returned */ public XWPFTableRow getRow(CTRow row) { for(int i=0; i<getRows().size(); i++){ if(getRows().get(i).getCtRow()== row) return getRow(i); } return null; } }// end class
return null; XWPFTableRow tableRow = table.getRow(row); if (tableRow == null) { return null;
/** * returns the XWPFRow which belongs to the CTRow row * if this row is not existing in the table null will be returned */ public XWPFTableRow getRow(CTRow row) { for (int i = 0; i < getRows().size(); i++) { if (getRows().get(i).getCtRow() == row) { return getRow(i); } } return null; }
return null; XWPFTableRow tableRow = table.getRow(row); if(tableRow == null){ return null;
/** * get the TableCell which belongs to the TableCell * * @param cell */ public XWPFTableCell getTableCell(CTTc cell) { XmlCursor cursor = cell.newCursor(); cursor.toParent(); XmlObject o = cursor.getObject(); if (!(o instanceof CTRow)) { cursor.dispose(); return null; } CTRow row = (CTRow) o; cursor.toParent(); o = cursor.getObject(); cursor.dispose(); if (!(o instanceof CTTbl)) { return null; } CTTbl tbl = (CTTbl) o; XWPFTable table = getTable(tbl); if (table == null) { return null; } XWPFTableRow tableRow = table.getRow(row); return tableRow.getTableCell(cell); }
/** * 合并行单元格 * * @param table * 表格对象 * @param row * 行 从0开始 * @param fromCol * 起始列 * @param toCol * 结束列 */ public static void mergeCellsHorizonal(XWPFTable table, int row, int fromCol, int toCol) { if (toCol <= fromCol) return; XWPFTableCell cell = table.getRow(row).getCell(fromCol); CTTcPr tcPr = getTcPr(cell); XWPFTableRow rowTable = table.getRow(row); for (int colIndex = fromCol + 1; colIndex <= toCol; colIndex++) { rowTable.getCtRow().removeTc(fromCol + 1); rowTable.removeCell(fromCol + 1); } tcPr.addNewGridSpan(); tcPr.getGridSpan().setVal(BigInteger.valueOf((long) (toCol - fromCol + 1))); }
/** * 合并列单元格 * * @param table * 表格对象 * @param col * 列 从0开始 * @param fromRow * 起始行 * @param toRow * 结束行 */ public static void mergeCellsVertically(XWPFTable table, int col, int fromRow, int toRow) { if (toRow <= fromRow) return; for (int rowIndex = fromRow; rowIndex <= toRow; rowIndex++) { XWPFTableCell cell = table.getRow(rowIndex).getCell(col); CTTcPr tcPr = getTcPr(cell); CTVMerge vMerge = tcPr.addNewVMerge(); if (rowIndex == fromRow) { // The first merged cell is set with RESTART merge value vMerge.setVal(STMerge.RESTART); } else { // Cells which join (merge) the first one, are set with CONTINUE vMerge.setVal(STMerge.CONTINUE); } } }
private void mergeCellsHorizontal(XWPFTable table, int row, int startCol,int endCol) { for (int cellIndex = startCol; cellIndex <= endCol; cellIndex++) { XWPFTableCell cell = table.getRow(row).getCell(cellIndex); if (cellIndex == startCol) { cell.getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.RESTART); } else { cell.getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.CONTINUE); } } }
private void mergeCellsVertically(XWPFTable table, int col, int fromRow,int toRow) { for (int rowIndex = fromRow; rowIndex <= toRow; rowIndex++) { XWPFTableCell cell = table.getRow(rowIndex).getCell(col); if (rowIndex == fromRow) { cell.getCTTc().addNewTcPr().addNewVMerge() .setVal(STMerge.RESTART); } else { cell.getCTTc().addNewTcPr().addNewVMerge().setVal(STMerge.CONTINUE); } } }
XWPFTableRow tableRow = table.getRow(row); ObjectUtils.requireNonNull(tableRow, "Row " + row + " do not exist in the table");
private void renderNoDataTable(NiceXWPFDocument doc, XWPFRun run, MiniTableRenderData tableData) { int row = 2, col = tableData.getHeaders().size(); XWPFTable table = doc.insertNewTable(run, row, col); initBasicTable(table, col, tableData.getWidth(), tableData.getStyle()); renderRow(table, 0, tableData.getHeaders()); TableTools.mergeCellsHorizonal(table, 1, 0, tableData.getHeaders().size() - 1); XWPFTableCell cell = table.getRow(1).getCell(0); cell.setText(tableData.getNoDatadesc()); }
Row row=rows.get(rowNumber); int height=row.getRealHeight(); XWPFTableRow tableRow=table.getRow(rowNumber); tableRow.setHeight(DxaUtils.points2dxa(height)); Map<Column,Cell> colCell=cellMap.get(row);
public static XWPFTableRow getFirstRow( XWPFTable table ) { int numberOfRows = table.getNumberOfRows(); if ( numberOfRows > 0 ) { return table.getRow( 0 ); } return null; }
int end=start+rowSpan; for(int i=start;i<end;i++){ XWPFTableCell c=table.getRow(i).getCell(columnNumber); buildCellBorder(leftBorder, c, 1); int end=start+rowSpan; for(int i=start;i<end;i++){ XWPFTableCell c=table.getRow(i).getCell(lastCol); buildCellBorder(style.getRightBorder(), c, 2); XWPFTableCell c=table.getRow(rowNumber).getCell(lastCol); buildCellBorder(rightBorder, c, 2); int end=start+colSpan; for(int i=start;i<end;i++){ XWPFTableCell c=table.getRow(rowNumber).getCell(i); buildCellBorder(topBorder, c, 3); int end=start+colSpan; for(int i=start;i<end;i++){ XWPFTableCell c=table.getRow(lastRow).getCell(i); buildCellBorder(bottomBorder, c, 4); XWPFTableCell c=table.getRow(lastRow).getCell(columnNumber); buildCellBorder(bottomBorder, c, 4);
private void mergeCellsHorizontal(XWPFTable table, int row, int startCol,int endCol) { for (int cellIndex = startCol; cellIndex <= endCol; cellIndex++) { XWPFTableCell cell = table.getRow(row).getCell(cellIndex); if (cellIndex == startCol) { cell.getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.RESTART); } else { cell.getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.CONTINUE); } } }
private void mergeCellsVertically(XWPFTable table, int col, int fromRow,int toRow) { for (int rowIndex = fromRow; rowIndex <= toRow; rowIndex++) { XWPFTableCell cell = table.getRow(rowIndex).getCell(col); if (rowIndex == fromRow) { cell.getCTTc().addNewTcPr().addNewVMerge() .setVal(STMerge.RESTART); } else { cell.getCTTc().addNewTcPr().addNewVMerge().setVal(STMerge.CONTINUE); } } }