Bootstrap

java对word文档转图片,转PDF

话不多说,直接入题


先引包

        <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,这部分操作是其他人搞的,所以具体步骤大家可以去百度,思路大致就是这样。


码字不易,于你有利,勿忘点赞

;