[]
本文介绍了在与SpreadJS进行IO操作时,GcExcel在工作簿和工作表级别与SJS及SSJSON格式的交互功能。
当将.sjs文件或SSJSON文件导出为PDF或图像时,GcExcel允许通过 WorkbookOptions 类的 setPixelBasedColumnWidth 方法,以像素而非字符为单位来渲染列宽。
参考以下示例代码,在导出为PDF或图像时基于像素渲染列宽:
// 初始化WorkbookOptions
WorkbookOptions workbookOptions = new WorkbookOptions();
// 为工作簿启用基于像素的列宽
workbookOptions.setPixelBasedColumnWidth(true);
Workbook workbook = new Workbook(workbookOptions);
// 打开SSJSON文件
workbook.open("Event budget.sjs");
// 导入.ssjson文件时取消注释以下代码
//workbook.open("Event budget.ssjson");
IWorksheet worksheet = workbook.getWorksheets().get(0);
// 保存为PDF和PNG文件
workbook.save("SavePDFWithPixelBasedColumnWidth.pdf");
worksheet.toImage("SavePDFWithPixelBasedColumnWidth.png");在执行JSON IO操作时,GcExcel允许设置标签栏的各种属性,如位置、宽度、显示新建标签按钮、是否允许编辑工作表名称等。IWorkbookView 接口提供了诸如 setTabNavigationVisible 、setNewTabVisible 、setAllowSheetReorder 、setTabStripWidth 、setTabStripPosition 等方法。
参考以下示例代码,将标签栏位置设置为左侧并配置其他标签栏属性:
// 创建一个新工作簿
Workbook workbook = new Workbook();
workbook.getWorksheets().add();
workbook.getBookView().setAllowSheetReorder(false);
workbook.getBookView().setTabEditable(false);
workbook.getBookView().setTabNavigationVisible(false);
workbook.getBookView().setTabStripPosition(SpreadJSTabStripPosition.Left);
workbook.getBookView().setTabStripWidth(150);
workbook.getBookView().setNewTabVisible(false);
try {
workbook.toJson(new FileOutputStream("sheettabposition.json"));
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}GcExcel支持获取有关SpreadJS工作表标签的信息,包括表格工作表(TableSheets)、甘特图工作表(GanttSheets)和报表工作表(ReportSheets)的数量、名称、类型和索引等详细信息。您可以从这里下载包含工作表标签信息的JSON文件。
GcExcel提供了 IWorkbook 接口的 getSheetTabs 属性,方便您获取所有工作表标签的信息。
参考以下代码获取工作簿中所有工作表标签的数量、名称、类型和索引:
// 创建一个新工作簿
Workbook workbook = new Workbook();
// 打开JSON文件
workbook.open("sheettabs.sjs");
ISheetTabs sheetTabs = workbook.getSheetTabs();
// 获取工作表标签的数量
System.out.println("工作表标签的数量:" + sheetTabs.getCount());
// 获取每个工作表的名称、类型和索引
for (ISheetTab item : workbook.getSheetTabs()){
System.out.println("工作表名称:" + item.getName() + ",类型:" + item.getSheetType() + ",索引:" + item.getIndex());
}