Жемчужина трудовой книжки - как написать Excel в формате HTML в отформатированном виде?
Я использую гем Workbook для предварительного просмотра файла Excel без разрывов страниц на моем веб-сайте. Прямо сейчас я успешно извлекаю файл Excel и записываю его в формат HTML и отображаю в качестве предварительного просмотра.
Следующий код извлекает и записывает Excel в HTML:
excel_file = Workbook::Book.open "#{file_url}"
excel_file.write_to_html(file_name + ".html")
Но это дает мне неформатированный HTML-лист без строк и столбцов или любого существующего файла Excel.
В документации к Murb / Workbook говорится, что мы можем передать формат в виде хэша в его опциях.
write_to_html(filename = "#{title}.html", options = {})
Итак, чтобы получить хэш формата, я попробовал следующий код:
excel_file.template.formats
Но это возвращает нулевой хеш. Итак, как я могу получить все форматы из файла Excel и записать в HTML? Или, по крайней мере, показать HTML-таблицу с границами для всех строк и столбцов.
1 ответ
Автор здесь. Журнал Workbook в основном создан для извлечения и повторного представления данных в файлах, а не для форматирования. В прошлом я делал несколько попыток добавить поддержку для поддержки форматирования при конвертации, но это еще далеко от завершения. Некоторые импортеры даже не устанавливают хэш форматирования, как вы узнали, особенно xlsx
импортер должен работать над этим.
HTML был построен, чтобы просто дать предварительный просмотр данных. Он в основном возвращает html-страницу со всеми таблицами, которая по умолчанию не отформатирована, хотя в классах используются имена форматов. Хотя есть вариант, если вы передадите style_with_inline_css: true
... но тогда требуется импортер для правильной установки хеша формата...
Я с удовольствием расскажу вам кое-что, когда вы захотите улучшить код импортера xlsx в соответствии с вашими потребностями и, как мы надеемся, жемчужиной рабочей книги в целом, но она потребует серьезной работы, если вам понадобятся не только некоторые цвета фона и свойства шрифта.