Я использую Docx4j для создания различных документов, и у меня возникла проблема с генерацией документов, содержащих изображения.Как заставить Docx4j обновить замененный файл изображения
Моя программа создает файл PNG размером 300x200 пикселей и создает документ, содержащий это изображение. Когда я открываю этот документ, изображение масштабируется в 1: 1. Затем программа перезаписывает PNG с разрешением 600x400 пикселей и снова создает документ. Когда я открываю этот новый документ, изображение масштабируется в 1: 2. Его размеры те же, что и предыдущее изображение.
Мне кажется, что класс Docx4j BinaryPartAbstractImage
кэширует информацию об изображениях в статическом члене и не обновляет информацию при изменении файла.
В настоящее время у меня нет другого решения, кроме остановки программы для очистки кеша или использования новых имен файлов изображений при создании документа. Первое решение является импровизированным, а последнее представляет больше проблем в тех частях программного обеспечения, которые ожидают, что путь файла не будет изменен.
Итак, есть ли у вас другое обходное решение для очистки кеша изображения?
Я видел эти '(cx, cy)', но это не ядро проблемы. Если я создаю документ 'A', который включает в себя файл' a.png', и если я перезаписываю 'a.png' содержимое другого размера, прежде чем генерировать второй документ' B', тогда размеры 'a.png 'в' B' такие же, как в 'A'. – Julien