话不多说,直接入题
先引包
<dependency>
<groupId>com.luhuiguo</groupId>
<artifactId>aspose-words</artifactId>
<version>23.1</version>
</dependency>
word文档转图片
import com.aspose.words.Document;
import com.aspose.words.SaveFormat;
/**
* word文档转图片
* @param wordPath word文档路径
* @param outImgPath 图片输出路径
*/
public static void wordConvertImg(String wordPath, String outImgPath) {
try(
FileInputStream fileInputStream = new FileInputStream(wordPath);
) {
Document document = new Document(fileInputStream);
// 只转第一页,如果有多页,这里得循环一下
Document page = document.extractPages(0, 1);
page.save(outImgPath, SaveFormat.PNG);
} catch (Exception e) {
log.error("word文档转图片错误", e);
throw new RuntimeException(e);
}
}
word文档转PDF
import com.aspose.words.Document;
import com.aspose.words.SaveFormat;
/**
* word文档转PDF
* @param wordPath word文档路径
* @param outPdfPath PDF输出路径
*/
public static void wordConvertImg(String wordPath, String outPdfPath) {
try(
FileInputStream fileInputStream = new FileInputStream(wordPath);
FileOutputStream pdfOutStremp = new FileOutputStream(outPdfPath);
) {
Document document = new Document(fileInputStream);
document.save(pdfOutStremp, SaveFormat.PDF);
} catch (Exception e) {
log.error("word文档转PDF错误", e);
throw new RuntimeException(e);
}
}
注意:部署到Linux机器上时,转PDF可能会乱码,在对应Linux机器上装对应字体,或者把windows机器上的字体拷一份到Linux上,因为没有权限上Linux,这部分操作是其他人搞的,所以具体步骤大家可以去百度,思路大致就是这样。
码字不易,于你有利,勿忘点赞