版权声明:学习交流为主,未经博主同意禁止转载,禁止用于商用。 https://blog.csdn.net/u012965373/article/details/89167525
package service;
import com.aspose.cells.*;
import utils.TimeUtil;
/**
* Convert Excel Sheet Data To Image
* @author yangxin_ryan
*/
public class Excel2Img {
private void convertToImage(String sourcePath, int sheetId, String startPoint, String endPoint) {
try {
TimeUtil timeUtil = new TimeUtil();
String picName = sourcePath.split("/")[3].split("\\.")[0];
System.out.println("picName: " + picName);
String resultPath = "/home/webserver/report_image_data/" + timeUtil.getDate() + "/" +
picName + ".jpeg";
System.out.println("resultPath: " + resultPath);
Workbook workbook = new Workbook(sourcePath);
Worksheet worksheet = workbook.getWorksheets().get(sheetId);
String area = startPoint + ":" + endPoint;
System.out.println("area: " + area);
// set the startPoint and endPoint
worksheet.getPageSetup().setPrintArea(area);
worksheet.getPageSetup().setLeftMargin(1);
worksheet.getPageSetup().setRightMargin(1);
worksheet.getPageSetup().setTopMargin(1);
worksheet.getPageSetup().setBottomMargin(1);
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setOnePagePerSheet(true);
options.setImageFormat(ImageFormat.getJpeg());
// set the fonts
CellsHelper.setFontDir("/usr/share/fonts/chinese/Fonts");
SheetRender sheetRender = new SheetRender(worksheet, options);
sheetRender.toImage(sheetId, resultPath);
System.out.println("Finish Convert Job");
} catch (Exception error) {
error.printStackTrace();
}
}
public static void main(String[] args) {
String sourcePath = "/xxx/xxxx.xlsx";
int sheetId = 0;
String startPoint = "A1";
String endPoint = "O96";
Excel2Img excel2Img = new Excel2Img();
excel2Img.convertToImage(sourcePath, sheetId, startPoint, endPoint);
}
}
对应的POM.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>rrd.com</groupId>
<artifactId>Excel2Img</artifactId>
<version>1.0-SNAPSHOT</version>
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>19.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>