I’m generating a frame like so:
XTextFrame frame = UnoRuntime.queryInterface(XTextFrame.class, serviceFactory.createInstance("com.sun.star.text.TextFrame"));
text.insertTextContent(cursor, frame, false);
XPropertySet properties = UnoRuntime.queryInterface(XPropertySet.class, frame);
properties.setPropertyValue("AnchorType", TextContentAnchorType.AT_PAGE);
properties.setPropertyValue("VertOrient", VertOrientation.CENTER);
properties.setPropertyValue("VertOrientRelation", RelOrientation.PRINT_AREA);
properties.setPropertyValue("HoriOrient", HoriOrientation.CENTER);
properties.setPropertyValue("HoriOrientRelation", RelOrientation.PRINT_AREA);
properties.setPropertyValue("Width", 15000);
It draws the frame centered horizontally, but not vertically (the frame draws at the top of the printable are).
If, after generating the content via code, I click inside the frame, hit enter, and then either backspace or CTRL-Z to undo, THEN it centers vertically, but unless I do that, it remains at the top, even after closing and reloading the document. Is there something else I need to do to get it centered vertically?