Программное обеспечение.

Увеличение размера файла при сохранении в LibreOffice Calc 3-4

alex » 25 дек 2014, 18:30

Сижу на Ubuntu 12.04 LTS. Пользуюсь пакетом LibreOffice 3.5.7.2.
Заметил такой неприятный баг, что, например, если открыть присланный xls-файл, созданный в Excel и просто переcохранить его, то размер файла может увеличиться в 100 раз! Например, с 12КБ до 1.8 МБ.
Проблема существует, как я понял, по крайней мере до версии LibreOffice 4.0.1.2.
Заключается она в том, что Calc добавляет в файл огромное количество пустых рядов с ячейками, заполненными значениями по умолчанию. Визуально это не видно.
Решение проблемы я нашел только на одном англоязычном сайте:
I found the problem. There were 4 x 65536 (mainly unused) rows with a custom row height.
I selected all unused rows, invoked Format > Row > Optimal Height and pressed OK. This shrinked the file from 5 MB to 10 k.

For discovering this I saved the file as .xlsx (Excel 2007/2010 XML or as OfficeOpen XML Spreadsheet, makes no difference). This is a zip format containing xml files.
I unzipped it and found huge files like xl/worksheets/sheet2.xml. I formatted one of them using xmllint --format and found 65536 lines looking like <row collapsed="false" customFormat="false" customHeight="true" hidden="false" ht="12.8" outlineLevel="0" r="65536"/>.

Автор пишет, что нужно выделить строки, идущие после содержимого в документе, затем пойти в меню Format > Row > Optimal Height (Формат > Строка > Оптимальная высота строки) и нажать OK.
alex
Администратор
 
Сообщения: 66
Зарегистрирован: 17 апр 2010, 00:45

Вернуться в Софт