Hello,
With playing with borders I notice issue it looks like setBorderSurroundsHeader/setBorderSurroundsFooter are not isolated when we set setBorderAppliesTo(PageBorderAppliesTo.ALL_PAGES)
I would expect that all properties related to page borders are isolated to specific section here is example code which reproduce this problem:
Document doc1 = new Document();
DocumentBuilder documentBuilder = new DocumentBuilder(doc1);
PageSetup pageSetup = documentBuilder.getCurrentSection().getPageSetup();
pageSetup.setBorderAppliesTo(PageBorderAppliesTo.ALL_PAGES);
pageSetup.setBorderDistanceFrom(PageBorderDistanceFrom.TEXT);
pageSetup.setBorderSurroundsHeader(true);
pageSetup.setBorderSurroundsFooter(true);
pageSetup.getBorders().setLineStyle(LineStyle.DOUBLE);
pageSetup.getBorders().getTop().setDistanceFromText(1);
pageSetup.getBorders().getLeft().setDistanceFromText(1);
pageSetup.getBorders().getRight().setDistanceFromText(1);
pageSetup.getBorders().getBottom().setDistanceFromText(1);
documentBuilder.writeln("Content");
documentBuilder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);
documentBuilder.writeln("Header");
documentBuilder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);
documentBuilder.writeln("Footer");
doc1.getSections().add(new Section(doc1));
documentBuilder.moveToSection(1);
PageSetup pageSetup2 = documentBuilder.getCurrentSection().getPageSetup();
pageSetup2.setBorderAppliesTo(PageBorderAppliesTo.ALL_PAGES);
pageSetup2.setBorderDistanceFrom(PageBorderDistanceFrom.TEXT);
pageSetup.setBorderSurroundsHeader(false);
pageSetup.setBorderSurroundsFooter(false);
pageSetup2.getBorders().setLineStyle(LineStyle.DOUBLE);
pageSetup2.getBorders().getTop().setDistanceFromText(10);
pageSetup2.getBorders().getLeft().setDistanceFromText(10);
pageSetup2.getBorders().getRight().setDistanceFromText(10);
pageSetup2.getBorders().getBottom().setDistanceFromText(10);
documentBuilder.writeln("Content");
documentBuilder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);
documentBuilder.writeln("Header");
documentBuilder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);
documentBuilder.writeln("Footer");
doc1.save("a.docx");
I expect that first section has header/footer surrounded and second is not.
I checked on version 22.10 and 23.1 and results is the same.