Экспорт таблицы LibreOffice (.ods) в формат .html

Добрый день! Я пытаюсь экспортировать файл формата .ods в формат .html. Все корректно экспортируется кроме условного форматирования. Что необходимо настроить, чтобы в html итог был виден, как после условного форматирования в ods?

@gold1995vov,

Не могли бы вы заархивировать свой файл ODS и прикрепить его сюда, чтобы мы могли проверить вашу проблему. Также вставьте образец кода, который вы используете.

Моя функция обработки файла:
public static void loadHtml(String file) {
Workbook wb = null;
try {
System.out.println(“Путь: " + path + file);
wb = new Workbook(path + file);
System.out.println(“Создали excel-объект”);
log.info(“Создали excel-объект”);
} catch (Exception ex) {
System.out.println(ex.getMessage());
log.error(ex.getMessage() + " Файла не существует”);
}

wb.calculateFormula();

HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.HTML);
options.setHiddenColDisplayType(HtmlHiddenColDisplayType.REMOVE);
options.setHiddenRowDisplayType(HtmlHiddenRowDisplayType.REMOVE);

try {
	file = file.replace(".xlsx", "");
	file = file.replace(".xls", "");
	file = file.replace(".ods", "");

	System.out.println(file);
	wb.save("tmp\\html\\" + year + "\\" + month + "\\" + day + "\\" + file + ".html");
	System.out.println("Сохранили html-файл");
	log.info("Сохранили html-файл");
} catch (Exception ex) {
	System.out.println(ex.getMessage());
	log.error(ex.getMessage());
}

}
Так же прикрепляю мой файл ods
OSN_POK_RAB.zip (11.5 KB)

Да, небольшое уточнение. Работаю на Java

@gold1995vov,

Обратите внимание, я могу воспроизвести проблему, о которой вы упомянули. Я обнаружил, что условное форматирование не отображается / не сохраняется должным образом при преобразовании ODS в HTML. Я зарегистрировал тикет с идентификатором CELLSJAVA-43398 для вашей проблемы. Постараемся в ближайшее время разобраться.

Как только у нас будет обновленная информация, мы сообщим вам об этом.

Спасибо за ответ! Буду ожидать

@gold1995vov,
Пожалуйста, попробуйте нашу последнюю версию / исправление: Aspose.Cells for Java v21.2.3:
aspose-cells-21.2.3.zip (7.1 MB)

Ваша проблема должна быть исправлена в нем.

Сообщите нам свой отзыв.

Спасибо большое за этот вариант! Я заметил, что отслеживается условное форматирование, но стили не применяются. Вместо окрашивания ячеек в синий и красный цвета в зависимости от их значения, библиотека окрашивает только в черный цвет. Проблема не решена :slight_smile: ODS-файл тот же, пример использования кода тот же

@gold1995vov,

Не могли бы вы сделать несколько снимков экрана, сравнивающих файл ODS (открытый в openoffice или MS Excel) с выходным HTML (показанным в каком-нибудь браузере), и предоставить нам. Мы скоро это проверим.

Да, конечно. Прикрепляю скриншоты.
Файл ODS в LibreOffice: Screenshot_26.png (54.1 KB)
Файл html: Screenshot_27.png (18.4 KB)

@gold1995vov,

Спасибо за скриншоты.

Я нахожу разные результаты с Aspose.Cells для Java v21.2.3, что мне кажется нормальным. Найдите прикрепленный HTML-вывод (сгенерированный новым исправлением с нашей стороны) и сообщите мне, если вы обнаружите в нем какие-либо проблемы с форматированием / стилем.
files1.zip (13.8 KB)

@gold1995vov,

Не могли бы вы поделиться своими региональными настройками и данными о среде, это поможет нам отследить проблему.

У меня почему-то не такой результат. Вы могли бы поделиться кодом?

Может быть проблема в том, что я использую JDK 7? У меня, к сожалению, нет возможности установить версию новее

@gold1995vov,

Я использую тот же код, что и ваш. Не могли бы вы попробовать свой сценарий на другом компьютере, на котором установлена версия JDK1.8 или выше, и сообщить нам свои результаты. Также, как было запрошено ранее, укажите свои региональные настройки и данные об окружающей среде.

Не совсем понимаю что такое региональные настройки :slight_smile:
На моем ПК установлена java версии 1.8. Использую в работе NetBeans 8.2. Настройки проекта: Screenshot_28.png (8.9 KB)
Дело в том, что программа в дальнейшем будет выполняться на сервере, где установлен JDK 1.7, но там не представляется возможны обновить до более новой версии

@gold1995vov,

Он работает на вашем компьютере (с JDK1.8)? Чтобы просмотреть языковой стандарт системы / региональные настройки для Windows (ОС), выполните следующие действия:

  1. Нажмите Пуск, затем Панель управления.
  2. Щелкните Часы, язык и регион.
    (для Windows 10, Windows 8: щелкните Регион. …).
    Пожалуйста, предоставьте подробную информацию после выполнения вышеуказанных шагов.
1 Like

Нет, на моем ПК с JDK 1.8 тоже не работает. Мои региональные настройки: Screenshot_29.png (6.3 KB)

@gold1995vov,

Спасибо за скриншот.
Извините, но не могли бы вы дать мне подробные сведения о региональных настройках на английском языке. Это в «Russian (Russia)»?

И не могли бы вы распечатать версию (CellsHelper.getVersion ()) в вашей программе, чтобы подтвердить, что вы используете последнее исправление? Мы протестировали исправление с JDK1.6, 1.7 и 1.8, результаты такие же, и мы не можем найти проблему.