Я использую Apache POI, чтобы поместить изображение в лист Excel. Когда я открываю файл в Excel и вручную изменяю размер ячейки, содержащей изображение, размер изображения также изменяется.
Как вставить изображение в ячейку, размер которой не изменяется в зависимости от размера ячейки?
Мой код:
private void addImageToExcelReport(InputStream is, OutputStream os, File image) {
try (BufferedReader br = new BufferedReader(new FileReader(image))) {
if (br.readLine() != null) {
XSSFWorkbook wb = new XSSFWorkbook(is);
XSSFSheet sheet = wb.getSheetAt(0);
InputStream inputStream = new FileInputStream(image);
byte[] bytes = IOUtils.toByteArray(inputStream);
int pictureIdx = wb.addPicture(bytes, Workbook.PICTURE_TYPE_PNG);
inputStream.close();
CreationHelper helper = wb.getCreationHelper();
Drawing drawing = sheet.createDrawingPatriarch();
ClientAnchor anchor = helper.createClientAnchor();
sheet.createRow(1).createCell(0);
anchor.setRow1(0);
anchor.setRow2(1);
anchor.setCol1(0);
anchor.setCol2(1);
drawing.createPicture(anchor, pictureIdx);
wb.write(os);
wb.close();
}
} catch (IOException e) {
loggerService.traceError(e.getMessage(), e);
}
}