예, Apache POI로 생성 된 파일을 Excel에서 처리하고 있습니다. 파일은 xlsx가 아니고 xls 여야합니다. 화살표를 그릴 필요가 있지만 위쪽 화살표를 그릴 수는 없습니다. 내가 내 화살표와 지정 행/CEL 1 및 행/CEL을 만들 XSSFClientAnchor를 사용 2.Apache POI XSSF가 위 화살표를 만들 수 없습니다.
XSSFClientAnchor (INT의 DX1, INT의 DY1, INT의 DX2, INT의 DY2, INT의 COL1, INT의 ROW1, INT COL2, INT ROW2)
col1> col 2와 row 1> row 2에서만 작동합니다. 따라서 위쪽 화살표를 그릴 수 없습니다. 위쪽 화살표를 얻기 위해 값을 변경하려고하면 생성 된 파일을 Excel에서 읽을 수 없으며 Excel이 화살표를 숨겨서 복구합니다. 내가 대체하려고하면
public static void test() {
XSSFWorkbook wb = new XSSFWorkbook();
XSSFSheet sheet = wb.createSheet("linechart");
XSSFDrawing pat = sheet.createDrawingPatriarch();
XSSFClientAnchor anchor = new XSSFClientAnchor(0, 0, 0, 0, 10, 10, 5, 5);
XSSFSimpleShape shape = pat.createSimpleShape(anchor);
shape.setShapeType(ShapeTypes.LINE);
shape.setLineWidth(4);
shape.setLineStyle(0);
shape.setLineStyleColor(0, 0, 0);
FileOutputStream fileOut;
try {
fileOut = new FileOutputStream(
"C:\\monfichier" + new Date().toString().replace(':', '_') + ".xlsx");
wb.write(fileOut);
fileOut.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
: 여기
내 코드입니다 XSSFClientAnchor 앵커 = 새로운 XSSFClientAnchor (0, 0, 0, 0, 10, 10, 5, 5); by : XSSFClientAnchor 앵커 = 새 XSSFClientAnchor (0, 0, 0, 0, 5, 5, 10, 10); 괜찮습니다 ...테스트 해 보시고 이것에 대해 어떻게 생각하십니까? POI에 관한 정보를 찾는 것은 정말로 어렵습니다.이 문제를 발견하지 못했습니다 ...