Если вам не нравится подход замены через Xml напрямую, можно выполнить итерации по всем слайдам и их формам.Если фигура XSLFTextShape
, возьмите абзацы и обработайте их, как вы.Если вы получаете XSLFGroupShape
, повторите и их getShapes()
.Поскольку они могут содержать разные типы фигур, вы можете использовать для этого рекурсию.Вы также можете обращаться с типом фигуры XSLFTable
.
Но настоящая проблема начинается тогда, когда вы понимаете, что то, что вы хотите заменить, разделено на несколько прогонов; -)