PDI de Apache autosizing una celda con formatting de porcentaje

Tengo algunos problemas con las células de autosizing. Una vez que mi progtwig rellena y formatea cada uno según corresponda, realiza un autoesquema de las celdas para que se vea visualmente aceptable. El problema es que cuando la celda se formatea en forma de porcentaje, mide automáticamente la celda sin tener en count el hecho de que hay un carácter '%', por lo que terminamos obteniendo #### en las celdas hasta que expandes la celda. ¿Hay alguna manera de autoesificarlo MIENTRAS tomas en consideración ese carácter extra '%'?

EDITAR:

enter image description here

Entonces, esto es lo que sucede, el VAR izquierdo se ha autoasignado correctamente por cualquier razón, pero el VAR de la derecha no.

EDIT2:

Noté que esto SÓLO sucede cuando el valor de la celda es 0.00%. Entonces todos los valores en la columna para VAR que tiene #### eran 0 y algunos de los valores en la columna izquierda para VAR no eran ceros.

Si bien esta puede no ser una solución ideal, una posibilidad es tomar el tamaño de la cadena que está insertando en la celda (es decir, "50.00%" = tamaño de 6) y establecer manualmente el ancho de la celda en function de eso.

Me temo que esto no es compatible con el PDI de Apache, ya que no tiene en count el formatting de celda personalizado cuando se intenta calcular el ancho de columna (solo toma en consideración las características de fuente y la rotation, pero no DataFormat).

Como solución alternativa, puede intentar escribir su método personalizado AutoSizeColumn como una modificación del método implementado actualmente, es decir:

public void autoSizeColumn(Sheet sheet, int column, int plusMinusChars) { double width = SheetUtil.getColumnWidth(sheet, column, false); if (width != -1) { width += plusMinusChars; width *= 256; int maxColumnWidth = 255*256; // The maximum column width for an individual cell is 255 characters if (width > maxColumnWidth) { width = maxColumnWidth; } sheet.setColumnWidth(column, (int)(width)); } } 

Luego puede llamarlo con un carácter extra '%' para imprimir:

 //4th column autosized + 1 character in width to accomodate for '%' autoSizeColumn(sheet, 3, 1);