Я работаю с PHPExcel для экспорта данных для загрузки. Когда открытые загруженные файлы, с ячейками имеют большое количество, вместо «номер» показывают «#######». Я опробован setAutoSize()
для каждого столбца, затем звоните $sheet->calculateColumnWidths()
, но он по-прежнему не изменяется. Я вижу calcColumnWidths() at here, @Mark Baker говорит, что «calculateColumnWidths() увеличивает значение, возможно, на 5%, чтобы убедиться, что весь столбец соответствует». Если длина номера в ячейке превышает 5%, то кажется Doen-х решено проблемойКак PHPExcel установить ширину автоколонн
UPDATE Это моя функция столбцов размера авто:
function autoFitColumnWidthToContent($sheet, $fromCol, $toCol) {
if (empty($toCol)) {//not defined the last column, set it the max one
$toCol = $sheet->getColumnDimension($sheet->getHighestColumn())->getColumnIndex();
}
for($i = $fromCol; $i <= $toCol; $i++) {
$sheet->getColumnDimension($i)->setAutoSize(true);
}
$sheet->calculateColumnWidths();
}
Какой метод авторазмера вы применяете для расчета? Приближенное или точное? Вы используете какой-либо конкретный шрифт? или жирным/курсивом? Как далеко вычисляется цифра? Возможно, добавление 10% будет лучше, чем 5%. –
@MarkBaker Я обновил пример кода для моего вопроса. Я использовал setAutoSize() класса ColumnDimension. – Davuz