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

Java使用Documents4j實現(xiàn)Word轉(zhuǎn)PDF(知識點+案例)

這篇具有很好參考價值的文章主要介紹了Java使用Documents4j實現(xiàn)Word轉(zhuǎn)PDF(知識點+案例)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

博主介紹:?目前全網(wǎng)粉絲2W+,csdn博客專家、Java領域優(yōu)質(zhì)創(chuàng)作者,博客之星、阿里云平臺優(yōu)質(zhì)作者、專注于Java后端技術(shù)領域。

涵蓋技術(shù)內(nèi)容:Java后端、算法、分布式微服務、中間件、前端、運維、ROS等。

博主所有博客文件目錄索引:博客目錄索引(持續(xù)更新)

視頻平臺:b站-Coder長路


源碼獲取

項目源碼:Gitee、Github

本篇文檔的視頻系列講解:Java實現(xiàn)自動化pdf打水印工具 開源PDF工具PDFBoxWord、Word轉(zhuǎn)PDF開源工具Documents4j


一、認識Documents4j

? Documents4j 是一個開源的 Java 庫,用于在 Java 應用程序中進行 Microsoft Office 文檔(如 Word、Excel、PowerPoint 等)的轉(zhuǎn)換。它利用 Microsoft Office 的本機 API,通過啟動 Microsoft Office 進程來執(zhí)行文檔轉(zhuǎn)換。Documents4j 提供了一種簡單的方式來將 Office 文檔轉(zhuǎn)換為其他格式,例如將 Word 文檔轉(zhuǎn)換為 PDF、將 Excel 表格轉(zhuǎn)換為 CSV 等。

? Documents4j 的工作原理是通過將 Microsoft Office 作為外部進程啟動,并與其進行通信來執(zhí)行文檔轉(zhuǎn)換任務。這種方法使得可以利用 Microsoft Office 的強大功能來執(zhí)行文檔轉(zhuǎn)換,同時又能夠在 Java 環(huán)境中方便地進行集成和控制。

? Documents4j 提供了一個簡單的 API,使得在 Java 應用程序中執(zhí)行文檔轉(zhuǎn)換變得簡單。它支持多線程操作,并且具有一定的性能優(yōu)化,使得可以高效地處理大量文檔轉(zhuǎn)換任務。


二、快速集成

2.1、pom.xml依賴

<!--word 2 pdf start-->
<dependency>
    <groupId>com.documents4j</groupId>
    <artifactId>documents4j-local</artifactId>
    <version>1.0.3</version>
</dependency>

<dependency>
    <groupId>com.documents4j</groupId>
    <artifactId>documents4j-transformer-msoffice-word</artifactId>
    <version>1.0.3</version>
</dependency>
<!--word 2 pdf end -->

2.2、word轉(zhuǎn)PDF實現(xiàn)

項目目錄

documents4j,個人開源(項目&amp;小工具),java,word,pdf

WordUtils.java

package com.changlu.utils;

import com.documents4j.api.DocumentType;
import com.documents4j.api.IConverter;
import com.documents4j.job.LocalConverter;
import java.io.*;

public class WordUtils {

    /**
     * Word轉(zhuǎn)PDF
     * @param filePath 源docx文件目錄及名稱  示例:C:\Users\93997\Desktop\watermark tools\watermarkTools\src\main\resources\2024-2-8計算機.docx
     * @param outFilePath 輸出文件目錄及名稱 示例:C:\Users\93997\Desktop\watermark tools\watermarkTools\src\main\resources\2024-2-8.pdf
     */
    public static void wordToPdf(String filePath, String outFilePath) {
        //源文件地址
        File inputWord = new File(filePath);
        //導出文件地址
        File outputFile = new File(outFilePath);
        InputStream doc = null;
        OutputStream outputStream = null;
        try {
            doc = new FileInputStream(inputWord);
            outputStream = new FileOutputStream(outputFile);
            IConverter converter = LocalConverter.builder().build();
            //轉(zhuǎn)換docx=>pdf
            boolean flag = converter.convert(doc).as(DocumentType.DOC).to(outputStream).as(DocumentType.PDF).execute();
            if (flag) {
                converter.shutDown();
            }
            doc.close();
            outputStream.close();
            System.out.println("文件名:" + outFilePath + " 轉(zhuǎn)換成功!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        String filePath = "C:\\Users\\93997\\Desktop\\watermark tools\\watermarkTools\\src\\main\\resources\\2024-2-8計算機.docx";
        String outFilePath = "C:\\Users\\93997\\Desktop\\watermark tools\\watermarkTools\\src\\main\\resources\\2024-2-8.pdf";
        //word轉(zhuǎn)pdf
        WordUtils.wordToPdf(filePath, outFilePath);
    }

}

Demo6.java

package com.changlu.demos;

import com.changlu.utils.WordUtils;
import java.io.UnsupportedEncodingException;

/**
 * @Description: Documents4j案例:word轉(zhuǎn)PDF實現(xiàn)
 * @Author: changlu
 * @Date: 2:18 PM
 */
public class Demo6 {
    public static void main(String[] args) throws UnsupportedEncodingException {
//        String originPath = URLDecoder.decode(Main.class.getClassLoader().getResource("input.docx").getFile(), "UTF-8"); //獲取到的是target下的類目錄
        String originPath = "F:\\00核心知識、成果、視頻產(chǎn)出區(qū)\\技術(shù)視頻\\2024.2.15 自制默默學打水印工具 watermark tools\\watermarkTools\\src\\main\\resources\\input.docx";
        String targetPath = originPath.replace("input.docx", "output.pdf");
        //docx轉(zhuǎn)為pdf文件
        WordUtils.wordToPdf(originPath, targetPath);
    }
}

測試效果

documents4j,個人開源(項目&amp;小工具),java,word,pdf

documents4j,個人開源(項目&amp;小工具),java,word,pdf


參考文章

[1]. 不要在去充VIP啦 ,Java 實現(xiàn) PDF、Word 互轉(zhuǎn)


資料獲取

大家點贊、收藏、關(guān)注、評論啦~

精彩專欄推薦訂閱:在下方專欄????

  • 長路-文章目錄匯總(算法、后端Java、前端、運維技術(shù)導航):博主所有博客導航索引匯總
  • 開源項目Studio-Vue—校園工作室管理系統(tǒng)(含前后臺,SpringBoot+Vue):博主個人獨立項目,包含詳細部署上線視頻,已開源
  • 學習與生活-專欄:可以了解博主的學習歷程
  • 算法專欄:算法收錄

更多博客與資料可查看????獲取聯(lián)系方式????,??文末獲取開發(fā)資源及更多資源博客獲取??


整理者:長路 時間:2024.2.15文章來源地址http://www.zghlxwxcb.cn/news/detail-829823.html

到了這里,關(guān)于Java使用Documents4j實現(xiàn)Word轉(zhuǎn)PDF(知識點+案例)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領支付寶紅包贊助服務器費用

相關(guān)文章

  • 6.2.0在線編輯:GrapeCity Documents for Word (GcWord) Crack

    6.2.0在線編輯:GrapeCity Documents for Word (GcWord) Crack

    支持 Office Math 函數(shù)以及轉(zhuǎn)換為 MathML GcWord 現(xiàn)在支持在 Word 文檔中創(chuàng)建和編輯 Office Math 內(nèi)容。GcWord 中的 OMath 支持包括完整的 API,可處理科學、數(shù)學和通用 Word 文檔中廣泛使用的數(shù)學符號、公式和方程。以下是通過 OMath 支持引入的新 API 的主要亮點 - 用于在 GcWord 中表示 Offi

    2024年02月13日
    瀏覽(22)
  • Java 使用 poi 和 aspose 實現(xiàn) word 模板數(shù)據(jù)寫入并轉(zhuǎn)換 pdf 增加水印

    Java 使用 poi 和 aspose 實現(xiàn) word 模板數(shù)據(jù)寫入并轉(zhuǎn)換 pdf 增加水印

    本項目所有源碼和依賴資源都在文章頂部鏈接,有需要可以下載使用 1. 需求描述 從指定位置讀取一個 word 模板 獲取業(yè)務數(shù)據(jù)并寫入該 word 模板,生成新的 word 文檔 將新生成的 word 文檔轉(zhuǎn)換為 pdf 格式 對 pdf 文檔添加水印 2. 效果預覽 word 模板 帶水印的 pdf 文檔 3. 實現(xiàn)思路

    2024年02月08日
    瀏覽(29)
  • GrapeCity Documents for Excel, Java Edition Crack

    GrapeCity Documents for Excel, Java Edition Crack

    增加了對SpreadJS.sjs文件格式的支持: 更快地將大型Microsoft Excel文件轉(zhuǎn)換為.sjs格式。 使用較小的占用空間保存導出的文件。 將Excel/SpreadJS功能導入SpreadJS/從SpreadJS導出。 從.sjs文件中壓縮的JSON文件生成一個JSON字符串。 使用各種可用選項自定義打開和保存SpreadJS.sjs文件。 在導

    2024年02月13日
    瀏覽(21)
  • Java集成Onlyoffice以及安裝和使用示例,輕松實現(xiàn)word、ppt、excel在線編輯功能協(xié)同操作,Docker安裝Onlyoffice

    Java集成Onlyoffice以及安裝和使用示例,輕松實現(xiàn)word、ppt、excel在線編輯功能協(xié)同操作,Docker安裝Onlyoffice

    docker pull onlyoffice/documentserver docker images 以下是將本機的9001端口映射到docker的80端口上,訪問時通過服務器ip:9001訪問,并且用?-v?將本機機==/data/aws_s3/file-storage==文件夾掛載到docker的?/var/www/onlyoffice/documentserver/web-apps/wsData文件下,后續(xù)直接通過http請求讀取對應的文件夾 doc

    2024年02月07日
    瀏覽(31)
  • 6.1.2-GcExcel:GrapeCity Documents Excel.Java Crack

    6.1.2-GcExcel:GrapeCity Documents Excel.Java Crack

    High-Speed Java Excel Spreadsheet API Library Programmatically create, edit, import, and export Excel spreadsheets in your Java applications. Deploy nearly anywhere. Create, load, edit, and save Excel spreadsheets Save to .XLSX, PDF, HTML, CSV, and JSON Based on the Excel Object Model with zero Excel dependencies Deploy locally, inhouse or to Cloud, includin

    2024年02月11日
    瀏覽(16)
  • GcExcel 6.2.3 for JAVA Crack GrapeCity Documents Excel

    GcExcel 6.2.3 for JAVA Crack GrapeCity Documents Excel

    High-Speed Java Excel Spreadsheet API Library Programmatically create, edit, import, and export Excel spreadsheets in your Java applications. Deploy nearly anywhere. GcExcel 6.2.3 for JAVA Create, load, edit, and save Excel spreadsheets Save to .XLSX, PDF, HTML, CSV, JSON, and SpreadJS files Based on the Excel Object Model with zero Excel dependencies Deploy

    2024年02月08日
    瀏覽(19)
  • java實現(xiàn)word轉(zhuǎn)html

    現(xiàn)有的需求是前端導入word文件,然后需要在瀏覽器上展示出來,實現(xiàn)方案是將前端導入的word轉(zhuǎn)成html的形式,再輸出給前端,廢話不多說,直接上代碼. 需要用到的依賴 ?代碼實現(xiàn) 注意事項 1.這個方法只支持docx結(jié)尾的文檔,doc文檔大同小異,如果有需要可以嘗試自己寫一下 2.和圖片上

    2024年02月15日
    瀏覽(20)
  • java實現(xiàn)pdf轉(zhuǎn)word

    1.java實現(xiàn)pdf轉(zhuǎn)word。 2.純免費開源。 3.pdf解析完會生成word文件和圖片文件夾。 4.無頁碼限制,文本類型生成到word中,圖片生成到圖片文件夾中。 5.弊端:需手動將圖片與文本整合成一個word文件。 僅提供一個pdf轉(zhuǎn)word的實現(xiàn)方案,代碼粗糙,老鐵輕噴。 jar包地址:https://downlo

    2024年03月10日
    瀏覽(20)
  • Java實現(xiàn)動態(tài)生成word報告

    Java實現(xiàn)動態(tài)生成word報告

    1.準備好docx文件模板 舉例:動態(tài)生成表格數(shù)據(jù),以下是list數(shù)組類型的freemarker語法 將寫好的word模板加入到templates目錄下 2.在pom.xml中導入相關(guān)依賴 3.關(guān)于Minio的介紹 Minio 是一個開源的對象存儲服務器,可用于存儲和訪問海量數(shù)據(jù)。以下是 Minio 的基本用法: (1)安裝 Minio 首先

    2024年02月09日
    瀏覽(18)
  • JAVA modbus4j 實現(xiàn)modbus tcp通訊

    JAVA modbus4j 實現(xiàn)modbus tcp通訊

    1.maven依賴 2.在modbus進行讀寫之前,需要先建立連接,例如:建立modbus tcp通訊 ?3.modbus4j 讀工具類 4. modbus4j 寫工具類

    2024年02月16日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領取紅包

二維碼2

領紅包