再下来就是打印的起始页码,它对应于HSSFSheet.PrintSetup.PageStart和HSSFSheet.PrintSetup.UsePage,如果UsePage=false,那么就相当于“自动”,这时PageStart不起作用;如果UsePage=true,PageStart才会起作用。所以在设置PageStart之前,必须先把UsePage设置为true。
“打印”栏中的“网格线”设置对应于HSSFSheet.IsPrintGridlines,请注意,这里不是HSSFSheet.PrintSetup下面,所以别搞混了。这里之所以不隶属于PrintSetup是由底层存储该信息的record决定的,底层是把IsGridsPrinted放在GridsetRecord里面的,而不是PrintSetupRecord里面的,尽管界面上是放在一起的。另外还有一个HSSFSheet.IsGridsPrinted属性,这个属性对应于底层的gridset Record,但这个record是保留的,从微软的文档显示没有任何意义,所以这个属性请不要去设置。
“单色打印”则对应于HSSFSheet.PrintSetup.NoColors,这是布尔类型的,值为true时,表示单色打印。
“草稿品质”对应于HSSFSheet.PrintSetup.IsDraft,也是布尔类型的,值为true时,表示用草稿品质打印。
这里的打印顺序是由HSSFSheet.PrintSetup.LeftToRight决定的,它是布尔类型的,当为true时,则表示“先行后列”;如果是false,则表示“先列后行”。
在NPOI 1.2中,“行号列标”、“批注”和“错误单元格打印为”、“页边距”暂不支持,将在以后的版本中支持。
有关打印的范例可以参考NPOI 1.2正式版中的 SetPrintSettingsInXls项目。
2.6.1用NPOI操作EXCEL--调整表单显示比例
在Excel中,可以通过调整右下角的滚动条来调整Sheet的显示比例。如图:
在NPOI中,也能通过代码实现这样的功能,并且代码非常简单: