Можно ли установить ширину столбца для рабочего листа XSSF, используя Apache POI API? - PullRequest
0 голосов
/ 01 июня 2011

Мне нужно сгенерировать файл MS Excel 2007+ из моего приложения в соответствии с заданным шаблоном, предоставленным руководством.Большая часть работы выполнена, но я должен установить ширину столбца в 11,34 сантиметра.Я пытался использовать метод setColumnWidth(int columnIndex, int width), но независимо от значения, которое я предоставляю, он не работает.JavaDoc говорит:

Установить ширину (в единицах 1/25 ширины символа)

Максимальная ширина столбца для отдельной ячейки составляет 255 символов.Это значение представляет количество символов, которое может отображаться в ячейке, отформатированной стандартным шрифтом.

Как это сделать?

Ответы [ 2 ]

1 голос
/ 01 июня 2011

Ладно, теперь я понимаю вашу проблему, ваши бизнес-требования гласят, что вы должны установить ширину столбца на основе стандартной ширины символов шрифта Excel.

Способ, которым я бы подошел к этому, состоял бы в том, чтобы использовать клавишу Print Screen на примере в Excel, затем вставить в Paint или аналогичную программу и подсчитать ширину пикселя. Затем я бы использовал инструмент линейки для измерения пикселей / см и использовал полученное число в качестве фиксированной ширины столбца.

Это, вероятно, потребует немного проб и ошибок, чтобы получить право.

Теперь, с учетом сказанного, я поделюсь своим личным мнением о том, что считаю это ленивым и слабым бизнес-требованием. Что такое "стандартный шрифт"? Какая версия Excel? Это требование открыто для слишком большой интерпретации разработчиком.

0 голосов
/ 03 июня 2011

На самом деле, я ошибся с самого начала!Мой (ужасный!) Плохой!Ширина колонок уже была установлена, но мысли нет!Все это заняло простое «правило трех», и я был задан.

...