public static JexcelSheetData createSheetData(Sheet sheet, JexcelTransformer transformer){ JexcelSheetData sheetData = new JexcelSheetData(); sheetData.setTransformer(transformer); sheetData.sheet = sheet; sheetData.sheetName = sheet.getName(); sheetData.columnWidth = new int[256]; for(int i = 0; i < 256; i++){ sheetData.columnWidth[i] = sheet.getColumnView(i).getSize(); } int numberOfRows = sheet.getRows(); for(int i = 0; i < numberOfRows; i++){ sheetData.rowDataList.add(JexcelRowData.createRowData(sheet, i, transformer)); } sheetData.mergedCells = sheet.getMergedCells(); return sheetData; }
private static WritableSheet createSheetCopy(Workbook w, int from, int to, WritableWorkbook writeableWorkbook) throws WriteException { Sheet sheet = w.getSheet(from); WritableSheet newSheet = writeableWorkbook.getSheet(to); // Avoid warning // "Maximum number of format records exceeded. Using default format." Map<CellFormat, WritableCellFormat> definedFormats = new HashMap<CellFormat, WritableCellFormat>(); for (int colIdx = 0; colIdx < sheet.getColumns(); colIdx++) { newSheet.setColumnView(colIdx, sheet.getColumnView(colIdx)); for (int rowIdx = 0; rowIdx < sheet.getRows(); rowIdx++) { if (colIdx == 0) { newSheet.setRowView(rowIdx, sheet.getRowView(rowIdx)); } Cell readCell = sheet.getCell(colIdx, rowIdx); Label label = new Label(colIdx, rowIdx, readCell.getContents()); CellFormat readFormat = readCell.getCellFormat(); if (readFormat != null) { if (!definedFormats.containsKey(readFormat)) { definedFormats.put(readFormat, new WritableCellFormat( readFormat)); } label.setCellFormat(definedFormats.get(readFormat)); } newSheet.addCell(label); } } return newSheet; }
CellView cellView = sheet.getColumnView(firstCol); int firstColWidth = cellView.getSize(); double firstColImageWidth = (1 - (x - firstCol)) * firstColWidth; if (lastCol != firstCol) cellView = sheet.getColumnView(lastCol); lastColWidth = cellView.getSize(); lastColImageWidth = (x + width - lastCol) * lastColWidth; for (int i = 0 ; i < lastCol - firstCol - 1 ; i++) cellView = sheet.getColumnView(firstCol + 1 +i); pointSize = (cellView.getFormat() != null) ? cellView.getFormat().getFont().getPointSize() : DEFAULT_FONT_SIZE;
CellView cellView = sheet.getColumnView(firstCol); int firstColWidth = cellView.getSize(); double firstColImageWidth = (1 - (x - firstCol)) * firstColWidth; if (lastCol != firstCol) cellView = sheet.getColumnView(lastCol); lastColWidth = cellView.getSize(); lastColImageWidth = (x + width - lastCol) * lastColWidth; for (int i = 0 ; i < lastCol - firstCol - 1 ; i++) cellView = sheet.getColumnView(firstCol + 1 +i); pointSize = (cellView.getFormat() != null) ? cellView.getFormat().getFont().getPointSize() : DEFAULT_FONT_SIZE;