SvgSaveOptions excel转svg的时候excel有超出印刷范围的数据,怎么才能把超出的数据也转成svg输出到第二页
要将超出印刷范围的数据转换为SVG并输出到第二页,您可以使用Aspose.Cells的功能来处理Excel文件并进行SVG转换。以下是一个基本的步骤指南,帮助您实现这一目标:
-
设置输出选项:在转换为SVG之前,您需要配置输出选项,确保每个工作表的内容都能正确显示。您可以使用
ImageOrPrintOptions
类来设置输出格式为SVG,并确保每个工作表的内容都在单独的页面上显示。 -
加载Excel文件:使用
Workbook
类加载您的Excel文件。 -
遍历工作表:遍历每个工作表,并为每个工作表创建一个
SheetRender
对象。这个对象将用于将工作表渲染为SVG格式。 -
渲染为SVG:使用
SheetRender
对象的ToImage
方法将工作表渲染为SVG文件。确保在渲染时设置适当的选项,以便处理超出印刷范围的数据。 -
保存SVG文件:将渲染的SVG文件保存到指定的目录中。
以下是一个示例代码,展示了如何实现上述步骤:
import com.aspose.cells.*;
public class ExcelToSVG {
public static void main(String[] args) {
// 加载Excel文件
Workbook workbook = new Workbook("path/to/your/excel/file.xlsx");
// 设置图像或打印选项
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setSaveFormat(SaveFormat.SVG);
options.setOnePagePerSheet(true); // 每个工作表输出为一页
// 遍历每个工作表
for (int i = 0; i < workbook.getWorksheets().getCount(); i++) {
Worksheet sheet = workbook.getWorksheets().get(i);
SheetRender sr = new SheetRender(sheet, options);
// 渲染为SVG
sr.toImage(0, "path/to/output/svg/sheet" + (i + 1) + ".svg");
}
}
}
通过上述代码,您可以将Excel文件中的所有工作表转换为SVG格式,并确保超出印刷范围的数据也能正确输出到相应的SVG文件中。请根据您的需求调整文件路径和其他参数。
如果您在实现过程中遇到任何问题,欢迎随时询问!
超过印刷范围,你指的是worksheet的打印区域么? 如果是,请清除打印区域,以输出打印区域外的数据:
Worksheet worksheet = ... //get worksheet
worksheet.getPageSetup().setPrintArea(null);