Вышла новая версия Apache POI 3.8beta4
В новой версии библиотеки, кроме обычных исправлений ошибок, содержится большое количество изменений, связанных с парсингом и обработкой файлов MS Word. Было закрыто большинство багов (47287, 47287, 47563, 47731, 49933, 51604), а также появились новые возможности:
- добавлена поддержка чтения сносок (footnotes, endnotes);
- добавлена поддержка чтения внутренних ссылок (bookmarks);
- добавлена поддержка изображений, сохранённых как OfficeDrawing (векторные изображения);
- исправлена обработка вложенных таблиц;
- расширена поддержка свойств символов и абзацев.
Все эти мелкие изменения были сделаны с целью добавить новый функционал, а именно три класса, которые, судя по почтовому списку рассылки, уже оказались полезными для некоторых пользователей библиотеки:
- Word-to-HTML Converter, конвертирующий документ Word в HTML, можно даже с картинками;
- Word-to-Text Converter, который является заменой для прошлого WordExtractor, корректно обрабатывающий вложенные OLE-документы, разбиение на абзацы, коды полей (в том числе гиперссылки);
- Word-to-FO Converter, конвертирующий документ Word в файл XSL FO, также возможно с картинками. Дальше этот файл можно передать на обработку в Apache FOP для получения PDF из Word.
Напомню, всё это сделано на чистом Java, без использования дополнительных пакетов вроде OpenOffice / LibreOffice, JOD Converter или подобных им. Если с JOD Converter скорость преобразования в HTML занимает 2-3 секунды, то с новыми конверторами это можно сделать за десятки миллисекунд.
Также в новой версии есть Excel-to-HTML Converter, а в будущую beta5 войдёт и Excel-to-FO Converter. Если у Вас есть идеи, дополнения (патчи) или вы просто хотите рассказать, как ваша компания использует эту библиотеку, заходите на домашнюю страницу: http://poi.apache.org/. Там же можно скачать последнюю версию.