Excelファイルのセルのピクセル数を取得するサンプルです。
かなり強引なプログラムです。
ただこうやるとうまくいきますので、必要なピクセル数にちゃんとイメージが張り付きます。
getHeightInPointsという関数はあっても、getWidthInPointsという関数はないです。
なぜ?Excelというのはそういう世界なんでしょうか?
//ファイルの取得 POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(ファイル名)); HSSFWorkbook wb = new HSSFWorkbook(fs); //シートの取得 HSSFSheet sheet = wb.getSheetAt(シート番号); int height = 0; int width = 0;
for (int i = starty; i < endy; i++) { HSSFRow row = sheet.getRow(i); if (row != null) height += row.getHeight()/15; else height += sheet.getDefaultRowHeight()/15; } for (int i = startx; i < endx; i++) { if (sheet.getColumnWidth((short)i) == sheet.getDefaultColumnWidth()) width += 72; else width += sheet.getColumnWidth((short)i)/32; }
|