本文以Java示例展示如何将Excel文档转为SVG格式。通过本文中的方法,在将Excel转为SVG时,如果sheet工作表中手动设置了分页,则将每个分页的内容单独保存为一个svg文件,如果sheet工作表中没有设置分页,则将Excel sheet表格中默认的分页范围保存为svg。即,转换时,按工作表中分页符位置来转换为单个svg。
1. 程序运行环境如下:
编译工具:IDEA
JDK版本:1.8.0
Excel测试文档:.xlsx 2013
Excel工具jar包:free spire.xls.jar 3.9.1
2.关于如何导入jar包
方法1:手动下载jar包。解压,将文件路径:D:…\Spire.Xls-FE_3.9.1\lib\Spire.Xls.jar中的文件导入Java程序(即本文中使用的方法)。
方法2:Maven仓库下载导入。先在maven程序中配置pom.xml文件,如下内容:
<repository>
<id>com.e-iceblue</id>
<url>http://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependency>
<groupId> e-iceblue </groupId>
<artifactId>spire.xls.free</artifactId>
<version>3.9.1</version>
</dependency>
完成配置后,点击“Import”下载导入。
3. Java****代码
import com.spire.xls.*; import java.io.FileOutputStream; import java.util.List; import java.util.Map; public class ExcelToSVG { public static void main(String[] args) throws Exception{ //加载Excel测试文档
Workbook workbook = new Workbook();
workbook.loadFromFile("sample.xlsx"); int count = 1; //获取分页信息
List<Map<Integer, PageColRow>> pageInfoList = workbook.getSplitPageInfo(); //遍历工作表
for (int i = 0; i < workbook.getWorksheets().getCount(); i++)
{
Worksheet sheet = workbook.getWorksheets().get(i);
FileOutputStream stream;
Map integerPageColRowMap = pageInfoList.get(i);//获取每页sheet的分页信息
for (Object object : integerPageColRowMap.values())
{
PageColRow colRow = (PageColRow) object;
stream = new FileOutputStream( (count++) + "-ExcelToSVG.svg");//指定文件名输出格式 //保存为SVG
sheet.toSVGStream(stream, colRow.StartRow, colRow.StartCol, colRow.EndRow, colRow.EndCol);
stream.flush();
stream.close();
}
}
}
}
转换结果可在IDEA项目文件夹下查看,如下图:
作者: E-iceblue
出处:https://www.cnblogs.com/Yesi/p/14821883.html
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦