Существует ли инструмент (система) автоматизации форматирования текста в docx по предопределенным правилам?
Есть некоторое количество документов, MS WORD в формате docx. Содержимое примерно одинаковое, что по смыслу, что по стилю - документация на объекты (пример не могу показать т.к. NDA).
Задача состоит в том, чтобы обработать файлы и привести к единому стилю форматирования текста. Т.е. смысл не меняется, ничего нового генерировать не нужно, только стиль отображения текста.
Что-то вроде системы упрощающей жизнь техническому писателю, которому в руки попался N-цать файлов с текстом, в котором всю мощь Word по стилям разные люди заменили пробелами, переносами и прочими оригинальными штуками. И в котором после копипасты появилось пара сотен левых стилей и прочего.
Поясню на примере того, как я это условно вижу:
Искомой системе дается файл docx. Языки русский и английский. Файл уже содержит предустановленные нужные стили форматирования текста.
Каким-то образом системе задается набор правил, например:
1) на весь подчеркнутый текст - применить стиль "Текст_подчеркнутый" (условное название вручную предопределенного стиля)
2) на весь список начинающийся с тире - применить стиль "Список_маркер_тире_подчеркнутый"
3) на все содержимое всех таблиц - применить стиль "Таблица_Текст_Основной"
......
N) на весь остальной текст, не попавший под правила выше - применить стиль "Текст_Обычный"
Система выдает отформатированный текст в виде файлов.
Человек вручную проверяет и правит оставшиеся косяки.
Требования:
1) Система должна работать локально, без интернета.
2) Файлы размером 150 - 500 страниц.
3) система должна понимать и различать: простой текст, полужирный, курсивный, подчеркнутый, списки маркированный и нумерованный, список сквозной многоуровневый, вставленные картинки, таблицы.
4) скорость работы, скажем не более часа-двух на файл в 500 страниц. Если системе можно подавать файлы на потоке один за другим, то требования к скорости еще меньше.
5) Неплохо бы открытость системы и хотя бы потенциальная возможность собственной доработки (не критично)
Существуют ли подобные системы и что это может быть - продвинутый скрипт парсящий OOXML напрямую, нейросетка, что-то иное?
Нейросетки выполняют те действия, на которые их натренировали.
Те действия, которые нужны конкретным пользователям, никакие волшебные палочки не исполнят.
С вашей проблемой вы, имхо, начали не с того конца. Вам нужно работать с информацией? Прекрасно, для начала ее нужно вытащить из помойки офисных форматов, потом все станет проще и прямее.
Правила разбора вы уже более-менее прикинули. Осталось поднять локальный сервер и написать скрипты, которые распарсят DOCX-файлы и вынут из них осмысленные блоки текста, списков, таблиц и картинок.
С возможностью потом составить из этого хоть DOCX, хоть PDF. И использовать в дальнейшей работе, указывая конкретную информацию для конкретных блоков, оставляя компьютеру оформление, которое достаточно прописать один раз.
Да, конечно, такая система есть из коробки и подробно описана в руководстве пользователя MS Office: называется "Скрипты" и "Макросы" - оно как раз и специально предназначено для автоматизации обработки документов. Можно использовать любой ЯП.