Is that possible – with apache POI – to set left or right print margin for Excel sheet?
The default margins are quite big. I cannot see neither setLeftMargin nor setRightMargin in XSSFPrintSetup, but only header and footer:
XSSFPrintSetup printSetup = (XSSFPrintSetup) sheet.getPrintSetup(); printSetup.setHeaderMargin(0.5D); printSetup.setFooterMargin(0.5D);
Is there any kind friend that could help me a little?
Advertisement
Answer
The sheet margins are not contained in the XSSFPrintSetup
object, but on the XSSFSheet
itself. Use Sheet
‘s getMargin
and setMargin
methods, passing the appropriate Sheet
constant for the top/left/bottom/right/header/footer margins. Set and get the margin in inches.
double leftMarginInches = sheet.getMargin(Sheet.LeftMargin); sheet.setMargin(Sheet.RightMargin, 0.5 /* inches */ );