国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java【代碼 16】將word、excel文件轉(zhuǎn)換為pdf格式和將pdf文檔轉(zhuǎn)換為image格式工具類(lèi)分享(Gitee源碼)aspose轉(zhuǎn)換中文亂碼問(wèn)題處理

這篇具有很好參考價(jià)值的文章主要介紹了Java【代碼 16】將word、excel文件轉(zhuǎn)換為pdf格式和將pdf文檔轉(zhuǎn)換為image格式工具類(lèi)分享(Gitee源碼)aspose轉(zhuǎn)換中文亂碼問(wèn)題處理。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

1.感謝

感謝小伙伴兒的分享:
● 不羈
● 郭中天
整合調(diào)整后的工具類(lèi)Gitee地址:https://gitee.com/yuanzhengme/java_application_aspose_demo

2.包含的工具類(lèi)

● WordToPdfUtil用于將word文檔轉(zhuǎn)換為pdf格式的工具類(lèi)
● ExcelToPdfUtil用于將excel文檔轉(zhuǎn)換為pdf格式的工具類(lèi)
● PdfToImageUtil用于將pdf文檔轉(zhuǎn)換為image格式的工具類(lèi)

3.lib文件說(shuō)明

3.1 使用的

● aspose-words-15.8.0-jdk16.jar 將word文檔轉(zhuǎn)換為pdf需要引入
● aspose-cells-8.5.2.jar 將excel文檔轉(zhuǎn)換為pdf需要引入
● aspose-cells-20.7.jar 將excel文檔轉(zhuǎn)換為pdf需要引入(Linux端中文出現(xiàn)亂碼時(shí)使用)

3.2 未使用的

● aspose-words-15.12.0-jdk16.jar 未測(cè)試
● aspose-pdf-22.4.cracked.jar 將pdf轉(zhuǎn)換為其他格式【破解版效果不佳】
● aspose-pdf-22.4.jar 將pdf轉(zhuǎn)換為其他格式【未破解效果依然不佳】

4.核心代碼

4.1 WordToPdfUtil

    /**
     * word 轉(zhuǎn) pdf
     *
     * @param wordFilePath word文件路徑
     * @param pdfFilePath  pdf文件路徑
     */
    public static void convert(String wordFilePath, String pdfFilePath) {
        FileOutputStream fileOutputStream = null;
        try {
            pdfFilePath = pdfFilePath == null ? getPdfFilePath(wordFilePath) : pdfFilePath;
            setLicense();
            File file = new File(pdfFilePath);
            fileOutputStream = new FileOutputStream(file);
            Document doc = new Document(wordFilePath);
            doc.save(fileOutputStream, SaveFormat.PDF);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                assert fileOutputStream != null;
                fileOutputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }

        }
    }

4.2 ExcelToPdfUtil

    /**
     * excel 轉(zhuǎn) pdf
     *
     * @param excelFilePath excel文件路徑
     * @param pdfFilePath   pdf文件路徑
     * @param convertSheets 需要轉(zhuǎn)換的sheet
     */
    public static void convert(String excelFilePath, String pdfFilePath, int[] convertSheets) {
        FileOutputStream fileOutputStream = null;
        try {
            pdfFilePath = pdfFilePath == null ? getPdfFilePath(excelFilePath) : pdfFilePath;
            // 設(shè)置License
            setLicense();
            // 讀取excel文件
            Workbook wb = new Workbook(excelFilePath);
            fileOutputStream = new FileOutputStream(pdfFilePath);
            // 設(shè)置pdf格式
            PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
            pdfSaveOptions.setOnePagePerSheet(true);
            if (null != convertSheets) {
                printSheetPage(wb, convertSheets);
            }
            wb.save(fileOutputStream, pdfSaveOptions);
            fileOutputStream.flush();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                assert fileOutputStream != null;
                fileOutputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

4.3 PdfToImageUtil

    /**
     * 根據(jù)參數(shù)將全部的PDF轉(zhuǎn)換為Image
     *
     * @param pdfFilePath   PDF文件路徑
     * @param imageFileDir  圖片存儲(chǔ)目錄
     * @param imageFileName 圖片存儲(chǔ)文件沒(méi)
     * @param type          圖片類(lèi)型
     */
    public static void convertAllPage(String pdfFilePath, String imageFileDir, String imageFileName, String type) {
        System.setProperty("sun.java2d.cmm", "sun.java2d.cmm.kcms.KcmsServiceProvider");
        // 圖片類(lèi)型
        if (type == null || "".equals(type)) {
            type = IMAGE_TYPE_JPG;
        }
        // 1.加載PDF文件
        File file = new File(pdfFilePath);
        // 2.生成JPG圖片的文件夾
        imageFileDir = imageFileDir == null ? getImageFileDir(pdfFilePath) : imageFileDir;
        imageFileName = imageFileName == null ? getImageFileName(pdfFilePath) : imageFileName;
        try {
            PDDocument pdDocument = PDDocument.load(file);
            PDFRenderer renderer = new PDFRenderer(pdDocument);
            int pageCount = pdDocument.getNumberOfPages();

            for (int i = 0; i < pageCount; i++) {
                BufferedImage image = renderer.renderImageWithDPI(i, 144);
                ImageIO.write(image, type,
                        new File(imageFileDir.concat(File.separator).concat(imageFileName).concat("_")
                                .concat(String.valueOf(i + 1)).concat(".").concat(type)));
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

6.問(wèn)題處理

  • 都需要將字體文件simsun.ttc上傳到jarPath/font目錄下。

6.1 Word中文無(wú)法轉(zhuǎn)換

在Linux環(huán)境下,如果轉(zhuǎn)換后的pdf文件無(wú)中文,在WordToPdfUtil轉(zhuǎn)換方法里添加以下代碼:

// 設(shè)置字體
String realPath = new ApplicationHome(WordToPdfUtil.class).getSource().getParentFile().toString();
FontSettings.setFontsFolder(realPath + File.separatorChar + "font", false);

6.2 Excel中文無(wú)法轉(zhuǎn)換

使用aspose-cells-20.7.jar:

<dependency>
	<groupId>com.aspose.cells</groupId>
	<artifactId>aspose-cells</artifactId>
	<version>20.7</version>
	<scope>system</scope>
	<systemPath>${project.basedir}/lib/aspose-cells-20.7.jar</systemPath>
</dependency>

并在ExcelToPdfUtil轉(zhuǎn)換方法里添加以下代碼:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-820858.html

// 設(shè)置字體
String realPath = new ApplicationHome(WordToPdfUtil.class).getSource().getParentFile().toString();
String fontDir = realPath + File.separatorChar + "font";
IndividualFontConfigs individualFontConfigs = new IndividualFontConfigs();
individualFontConfigs.setFontFolder(fontDir, false);
LoadOptions loadOptions = new LoadOptions();
loadOptions.setFontConfigs(individualFontConfigs);
// 讀取excel文件
Workbook wb = new Workbook(excelFilePath, loadOptions);

7.總結(jié)

  • PDF轉(zhuǎn)換為其他格式的方法效果不佳,遇到好的方案會(huì)進(jìn)行補(bǔ)充。
  • 主要用到aspose的jar包,實(shí)際上是需要授權(quán)的,否則會(huì)有水印,是個(gè)隱患。

到了這里,關(guān)于Java【代碼 16】將word、excel文件轉(zhuǎn)換為pdf格式和將pdf文檔轉(zhuǎn)換為image格式工具類(lèi)分享(Gitee源碼)aspose轉(zhuǎn)換中文亂碼問(wèn)題處理的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 電腦pdf如何轉(zhuǎn)換成word格式?用它實(shí)現(xiàn)pdf文件一鍵轉(zhuǎn)換

    電腦pdf如何轉(zhuǎn)換成word格式?用它實(shí)現(xiàn)pdf文件一鍵轉(zhuǎn)換

    pdf轉(zhuǎn)word格式可以用于提取和重用pdf文檔中的內(nèi)容,有時(shí)候,我們可能需要引用或引用pdf文檔中的一些段落、表格或數(shù)據(jù),通過(guò)將pdf轉(zhuǎn)換為可編輯的Word文檔,可以輕松地復(fù)制和粘貼所需內(nèi)容,節(jié)省我們的時(shí)間,那么如何進(jìn)行pdf轉(zhuǎn)word呢?市面上許多的pdf轉(zhuǎn)換器對(duì)于大多數(shù)人來(lái)說(shuō)

    2024年01月21日
    瀏覽(22)
  • PDF文件轉(zhuǎn)換成word軟件有哪些?分享兩個(gè)文件格式轉(zhuǎn)換軟件

    PDF文件轉(zhuǎn)換成word軟件有哪些?分享兩個(gè)文件格式轉(zhuǎn)換軟件

    在日常辦公中,我們經(jīng)常使用各種辦公軟件,其中PDF和Word是最常見(jiàn)的兩種格式。相較于Word文件,PDF文件具有更強(qiáng)的兼容性和安全性,因此我們通常會(huì)選擇以PDF格式分享文件。然而,如果我們需要提取PDF文件中的部分內(nèi)容,可能會(huì)遇到一些操作上的困難。那么有沒(méi)有簡(jiǎn)單易用

    2024年02月15日
    瀏覽(18)
  • 三種方法將Word文檔轉(zhuǎn)換為PDF文件格式

    三種方法將Word文檔轉(zhuǎn)換為PDF文件格式

    如何將Word文檔轉(zhuǎn)換為PDF文件格式呢?大家在傳輸文件時(shí),很多人喜歡使用PDF文件格式,因?yàn)樗浅7€(wěn)定,不會(huì)出現(xiàn)格式混亂的問(wèn)題。但有些人可能不知道如何進(jìn)行轉(zhuǎn)換,今天我將介紹三種轉(zhuǎn)換方法,讓我們一起來(lái)學(xué)習(xí)一下吧。 方法一:記靈在線工具轉(zhuǎn)換 ① 首先,進(jìn)入記靈在

    2024年02月09日
    瀏覽(22)
  • Java實(shí)現(xiàn)Word文檔轉(zhuǎn)PDF,PDF轉(zhuǎn)Word,PDF轉(zhuǎn)Excel,PDF轉(zhuǎn)換工具

    java實(shí)現(xiàn)word文檔轉(zhuǎn)PDF,PDF轉(zhuǎn)word 解決只能轉(zhuǎn)換4頁(yè)問(wèn)題 解決每頁(yè)頭部存在水印問(wèn)題 引入依賴 破解的jar包 鏈接: https://pan.baidu.com/s/1MO8OBuf4FQ937R9KDtofPQ 提取碼: 4tsn 源碼路徑:https://download.csdn.net/download/weixin_43992507/88215577 像流讀取文件這些要關(guān)閉釋放,不然異常報(bào)錯(cuò)文件的讀取不會(huì)

    2024年02月13日
    瀏覽(30)
  • vue 實(shí)現(xiàn) word/excel/ppt/pdf 等文件格式預(yù)覽操作

    vue 實(shí)現(xiàn) word/excel/ppt/pdf 等文件格式預(yù)覽操作

    第三方服務(wù)接口地址:XDOC文檔預(yù)覽服務(wù) 特征: 有文件大小限制,超過(guò)要收費(fèi)! 使用方法 ?參考地址:https://api.gitee.com/zhou_andong/vue-office/ 一、安裝插件 vue-office 二、在引用時(shí)會(huì)涉及版本不兼容的問(wèn)題 可以在npm包庫(kù) ,查看版本:https://www.npmjs.com/ 1、搜索插件名 2、以下版本沒(méi)

    2024年02月16日
    瀏覽(110)
  • Word轉(zhuǎn)PDF工具哪家安全?推薦好用的文件格式轉(zhuǎn)換工具

    Word轉(zhuǎn)PDF工具哪家安全?推薦好用的文件格式轉(zhuǎn)換工具

    Word文檔是我們最常見(jiàn)也是最常用的辦公軟件,想必大家都知道了Word操作起來(lái)十分的簡(jiǎn)單,而且功能也是比較齊全的。隨著科技的不斷進(jìn)步,如今也是有越來(lái)越多類(lèi)型的辦公文檔,PDF就是其中之一,那么word轉(zhuǎn)pdf怎么轉(zhuǎn)?Word轉(zhuǎn)PDF工具有嗎?下面文章就給大家推薦一下小圓象PDF轉(zhuǎn)換

    2024年02月13日
    瀏覽(23)
  • Vue3 實(shí)現(xiàn)文件預(yù)覽 Word Excel pdf 圖片 視頻等格式 大全!!!!

    Vue3 實(shí)現(xiàn)文件預(yù)覽 Word Excel pdf 圖片 視頻等格式 大全!!!!

    先上效果圖 ? ?插件安裝 先說(shuō) word 文件是docx-preview插件 ? ? ? ? ? excel文件是用?xlsx 插件? ?? 介紹后端返回的數(shù)據(jù) 因?yàn)樵跀r截器處 做了對(duì)數(shù)據(jù)的處理 最后你調(diào)接口拿到的數(shù)據(jù)是 一個(gè)對(duì)象 里面包含: url :? blob對(duì)象轉(zhuǎn)換的用于訪問(wèn) Blob 數(shù)據(jù)的臨時(shí)鏈接。這個(gè)鏈接可以被用于

    2024年02月07日
    瀏覽(108)
  • Java 將 Excel 轉(zhuǎn)換為 PDF 文件

    Java 將 Excel 轉(zhuǎn)換為 PDF 文件

    持續(xù)創(chuàng)作,加速成長(zhǎng)!這是我參與「掘金日新計(jì)劃 · 10 月更文挑戰(zhàn)」的第11天,點(diǎn)擊查看活動(dòng)詳情 今天這是篇粗糙的文章,文字也較少,整理了個(gè)Java將Excel 轉(zhuǎn)換為 PDF 文件的工具類(lèi)。(還比較粗糙粗糙~) 用的是? aspose ?和 pdfbox 實(shí)現(xiàn)的。 aspose 是沒(méi)辦法在公開(kāi)的 Maven 倉(cāng)庫(kù)下

    2024年02月09日
    瀏覽(20)
  • Java使用ftl模板文件生成Word,以及Word轉(zhuǎn)換圖片或Pdf工具類(lèi)

    Java使用ftl模板文件生成Word,以及Word轉(zhuǎn)換圖片或Pdf工具類(lèi)

    一、寫(xiě)在前面 最近在項(xiàng)目中使用打印功能,發(fā)現(xiàn)這個(gè)功能我已經(jīng)寫(xiě)過(guò)多次了,下面這個(gè)文章的發(fā)步日期在2020年,不得不感慨時(shí)間之快啊。 https://blog.csdn.net/weixin_43238452/article/details/109636200?spm=1001.2014.3001.5501 下面介紹一下應(yīng)用場(chǎng)景:這次項(xiàng)目依舊是springboot項(xiàng)目,使用ftl模版生

    2024年02月15日
    瀏覽(38)
  • java超簡(jiǎn)單實(shí)現(xiàn)文檔在線預(yù)覽功能,支持word\excel\text\pdf\圖片等格式轉(zhuǎn)pdf,aspost 轉(zhuǎn)pdf部署linux中文亂碼解決方案

    java超簡(jiǎn)單實(shí)現(xiàn)文檔在線預(yù)覽功能,支持word\excel\text\pdf\圖片等格式轉(zhuǎn)pdf,aspost 轉(zhuǎn)pdf部署linux中文亂碼解決方案

    一、背景 ????????在工作中需要對(duì)上傳到服務(wù)器的各種類(lèi)型包括但不限于word、pdf、excel等文件進(jìn)行在線預(yù)覽,前端比較菜搞不定,只能本人親自上。 ? ? ? ? 網(wǎng)上的經(jīng)驗(yàn)比較多也比較亂, 有的只有預(yù)覽,沒(méi)有文件格式轉(zhuǎn)換,有的也不說(shuō)linux存在字體問(wèn)題, 本文會(huì)直白的給

    2024年04月10日
    瀏覽(596)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包