Using Coldfusion cfspreadsheet to format spreadsheet page properties
cfspreadsheet, coldfusion, margin, orientation, spreadsheet
Solution
Last I checked, there were no built-in functions for manipulating margins or orientation. You need to tap into the underlying POI functions.
Create a CF spreadsheet object, then grab a reference to the underlying POI worksheet (whose properties you want to change):
<cfset cfSheetObject = SpreadSheetNew()>
<cfset poiSheet = cfSheetObject.getWorkBook().getSheet("TheSheetName")>
Orientation can be changed through the sheet's print properties:
<cfset ps = poiSheet.getPrintSetup()>
<cfset ps.setLandscape(true)>
Use `setMargin(margin, size)` to change the desired margin(s): `LeftMargin`, `RightMargin`, etcetera... For a complete list of margin names, see the field names in the `Sheet` interface.
<cfset poiSheet.setMargin( poiSheet.LeftMargin, 0.25)>
Problem
I would like to format the spreadsheet as below but couldn't find the proper functions to do it with cfspreadsheet or independent spreadsheet() functions. - set page orientation to either portrait or landscape - set page margin Please advise!