private static void addAllPageShape(Document document, String imagepath, boolean behindText) throws Exception {
Shape shape = new Shape(document, ShapeType.IMAGE);
shape.getImageData().setImage(imagepath);
shape.setBehindText(behindText);
shape.setRelativeHorizontalPosition(RelativeHorizontalPosition.PAGE);
shape.setRelativeVerticalPosition(RelativeVerticalPosition.PAGE);
shape.setLeft(document.getFirstSection().getPageSetup().getPageWidth() - shape.getImageData().getImageSize().getWidthPoints());
Paragraph dataMatrixPara = new Paragraph(document);
dataMatrixPara.appendChild(shape);
for (Section sect : document.getSections()) {
try {
HeaderFooter header1 = sect.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
if (header1 == null)
{
// There is no header of the specified type in the current section, create it.
header1 = new HeaderFooter(document, HeaderFooterType.FOOTER_PRIMARY);
sect.getHeadersFooters().add(header1);
}
header1.appendChild(dataMatrixPara.deepClone(true));
HeaderFooter header2 = sect.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
if (header2 == null)
{
header2 = new HeaderFooter(document, HeaderFooterType.HEADER_FIRST);
sect.getHeadersFooters().add(header2);
}
header2.appendChild(dataMatrixPara.deepClone(true));
HeaderFooter header3 = sect.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
if (header3 == null)
{
header3 = new HeaderFooter(document, HeaderFooterType.HEADER_EVEN);
sect.getHeadersFooters().add(header3);
}
header3.appendChild(dataMatrixPara.deepClone(true));
} catch (Exception e) {
e.printStackTrace();
}
}
}
Document doc = new Document(MyDir + "in.docx");
addAllPageShape(doc, MyDir + "in.png", false);
doc.save(MyDir + "Out.docx");
Hi,
shape.setLeft(document.getFirstSection().getPageSetup().getPageWidth()
-shape.getImageData().getImageSize().getWidthPoints()
-document.getFirstSection().getPageSetup().getLeftMargin());
u1:p</u1:p>