Как я уже сказал - это временное решение. Но без этого - высота изображения равна высоте линии (бег). Добавление некоторых разрывов до того, как-то помогло. Я не сказал это правильно при первом комментарии - конечно, расположение не изменилось, но визуально производит желаемый эффект.
авляю изображение в docx программно. Но в результате макет меня не устраивает. Столкнулся с недостатком документации. Мне нужно изменить обтекание изображения (макет). Например, теперь у меня есть это:
Но хочу это:
UPD1: Что я делаю: перебираю абзацы, затем через прогоны и нахожу определенный прогон со специальной закладкой. В этом прогоне я добавляю картинку:
XWPFPicture pic = run.addPicture(
new ByteArrayInputStream(picSource),
Document.PICTURE_TYPE_PNG,
"pic",
Units.toEMU(100),
Units.toEMU(30));
UPD2Исследовано что-то интересное внутри этого класса:
org.openxmlformats.schemas.drawingml.x2006.wordprocessingDrawing.CTAnchor
методsetWrapTight(CTWrapTight var1)
, Может быть это так. До сих пор не знаю, как применить его к моему коду.
UPD3Наконец-то я пришел к этому (currentRun - запустите с нашей картинкой):
CTWrapTight ctWrapTight = currentRun.getCTR().getDrawingList().get(0).addNewAnchor().addNewWrapTight();
CTWrapPath ctWrapPath = ctWrapTight.addNewWrapPolygon();
CTPoint2D ctStart = ctWrapPath.addNewStart();
ctStart.setX(0L);
ctStart.setY(0L);
CTPoint2D ctLineTo1 = ctWrapPath.addNewLineTo();
CTPoint2D ctLineTo2 = ctWrapPath.addNewLineTo();
CTPoint2D ctLineTo3 = ctWrapPath.addNewLineTo();
ctLineTo1.setX(21384L);
ctLineTo1.setY(20520L);
ctLineTo2.setX(21384L);
ctLineTo2.setY(0L);
ctLineTo3.setX(0L);
ctLineTo3.setY(0L);
ctWrapTight.setWrapText(STWrapText.BOTH_SIDES);
Но это сломанный документ, когда я пытаюсь открыть его:
Мы сожалеем. Мы не можем открыть документ, потому что обнаружили проблему с его содержимым.
Зависимости являются:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
<version>1.3</version>
</dependency>