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

java導出word(含圖片、表格)

這篇具有很好參考價值的文章主要介紹了java導出word(含圖片、表格)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1.pom 引入

 <!--word報告生成依賴-->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>4.1.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>

2.java代碼示例


public class test {
    public static void main(String[] args) throws IOException, InvalidFormatException {

        log.info("Word文檔開始生成!");
        XWPFDocument document = new XWPFDocument();
        WriteHomePage(document,1,"SSS"); //寫首頁
        WriteText(document); //寫表格前正文與題注
        WriteFirstTable(document); //寫第一個表格

        FileOutputStream out = new FileOutputStream("Report.docx");
        document.write(out);
        out.close();
        document.close();
        log.info("Word文檔已成功生成!");
    }
    public static XWPFDocument WriteHomePage(XWPFDocument document, int orb, String salliteName) throws IOException, InvalidFormatException {

        //插入圖片
        String imgFile = "E:\\test.png";
        byte[] imageBytes = Files.readAllBytes(new File(imgFile).toPath());
        XWPFParagraph paragraph = document.createParagraph();
        XWPFRun run00 = paragraph.createRun();
        run00.setText(" ");
        int width = 200; // 圖片寬度
        int height = 140; // 圖片高度
        int pictureType = XWPFDocument.PICTURE_TYPE_PNG;
        run00.addPicture(new ByteArrayInputStream(imageBytes), pictureType, imgFile, Units.toEMU(width), Units.toEMU(height));
        //輸入標題
        XWPFParagraph title1 = document.createParagraph();
        XWPFRun run = title1.createRun();
        run.setText("O00");
        run.setUnderline(UnderlinePatterns.SINGLE);
        run.setFontFamily("Times New Roman");
        run.setFontSize(28);
        run.setBold(true);
        run.setItalic(true);
        //不同字體設置的參數大小不同,需要嘗試
        title1.setIndentationFirstLine(1130);// <!-- 設置首行縮進2字符 單位是 1/20 磅 -->
        run.addBreak();
        XWPFParagraph title2 = document.createParagraph();
        XWPFRun run1 = title2.createRun();
        run1.setText(salliteName+" Continuity of Data");
        run1.setFontFamily("Times New Roman");
        run1.setFontSize(28);
        run1.setBold(true);
        title2.setIndentationFirstLine(1130); // <!-- 設置首行縮進2字符 -->
        //設置空白行
        for (int i = 0; i < 16; i++) {
            XWPFParagraph blank = document.createParagraph();
            blank.createRun().setText("");
        }
        // 創(chuàng)建段落并設置右對齊樣式
        XWPFParagraph footer = document.createParagraph();
        footer.setAlignment(ParagraphAlignment.RIGHT);
        // 創(chuàng)建頁腳并添加到段落中
        XWPFRun run2 = footer.createRun();
        run2.setText("Data Center");
        run2.setFontSize(18);
        run2.setFontFamily("Times New Roman");
        run2.addBreak();
        XWPFRun run3 = footer.createRun();
        run3.setText("www.xxx.com");
        run3.setFontSize(18);
        run3.setFontFamily("Times New Roman");
        run3.setUnderline(UnderlinePatterns.SINGLE);
        run3.addBreak();
        return document;
    }

    public static XWPFDocument WriteText(XWPFDocument document){
        //新建一頁,創(chuàng)建表格
        XWPFParagraph newPage = document.createParagraph();
        newPage.setPageBreak(true);
        XWPFParagraph para = document.createParagraph();
        XWPFRun run = para.createRun();
        run.setText("該報告數據內容正文如下。");
        run.setFontFamily("宋體");
        run.setFontSize(12);//小四
//        XWPFFont font =  ;
        para.setIndentationFirstLine(500); // <!-- 設置首行縮進2字符 -->
        para.setSpacingBetween(1.5f);
        //表題注
        XWPFParagraph para2 = document.createParagraph();
        XWPFRun runPara2 = para2.createRun();
        runPara2.setText("表1  數據概況");
        runPara2.setFontFamily("宋體");
        runPara2.setFontSize(12);
        para2.setAlignment(ParagraphAlignment.CENTER);
        para2.setVerticalAlignment(TextAlignment.CENTER);
        para2.setSpacingBetween(1.5f);
        return document;
    }

    //輸入表格
    public static XWPFDocument WriteFirstTable(XWPFDocument document){
        int row = 2;
        int col = 2;
        XWPFTable table = document.createTable(row, col);
        // 設置表格行高
        for (XWPFTableRow tableRow : table.getRows()) {
            tableRow.setHeight(500);
        }
        table.setStyleID("Table Grid");
        table.setWidth("100%");
        //設置表格標題
        String[] titleArr = {"數據類型","數據連續(xù)性"};
        XWPFTableRow titleRow = table.getRow(0);
        //設置表頭內容和樣式,
        for (int i = 0; i < col; i++) {
            XWPFTableCell cell = titleRow.getCell(i);
            cell.getCTTc().addNewTcPr().addNewVAlign().setVal(STVerticalJc.CENTER);
            XWPFParagraph p = cell.getParagraphs().get(0);
            p.setAlignment(ParagraphAlignment.CENTER);
            XWPFRun run3 = p.createRun();
            run3.setBold(true); // 設置字體加粗
            run3.setText(titleArr[i]);
        }
        //CTHMerge 橫向合并,CTVMerge縱向合并, STMerge.RESTART 表示開始合并,為 STMerge.CONTINUE 表示繼續(xù)合并
//        titleRow.getCell(4).getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.RESTART);
//        titleRow.getCell(5).getCTTc().addNewTcPr().addNewHMerge().setVal(STMerge.CONTINUE);
//        XWPFParagraph p = titleRow.getCell(4).getParagraphs().get(0);
//        p.setAlignment(ParagraphAlignment.CENTER);

        XWPFTableRow row1 = table.getRow(1);
        row1.getCell(0).setText("11");
        row1.getCell(1).setText("12");
        XWPFTableRow row2 = table.getRow(1);
        row2.getCell(0).setText("21");
        row2.getCell(1).setText("22");

        return document;
    }
}

3.效果展示
java導出word(含圖片、表格),javaweb,java,word導出文章來源地址http://www.zghlxwxcb.cn/news/detail-729153.html

到了這里,關于java導出word(含圖片、表格)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

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

相關文章

  • JAVA POI的excel中包含圖片進行讀取保存,單張圖片,多張圖片

    JAVA POI的excel中包含圖片進行讀取保存,單張圖片,多張圖片

    ---------------------------------------------效果---------------------------------------------------------- 1.單張圖片 2.多張圖片

    2024年02月11日
    瀏覽(23)
  • springboot后端存儲富文本內容(含圖片內容)

    springboot后端存儲富文本內容(含圖片內容)

    springboot:后端快速應用開發(fā)框架。 tinymce:簡單的富文本編輯器。 base64:Base64是網絡上最常見的用于傳輸8Bit字節(jié)碼的編碼方式之一,Base64就是一種基于64個可打印字符來表示二進制數據的方法。編碼規(guī)則:把3個字節(jié)變成4個字節(jié);每76個字符加一個換行符;最后的結束符也要處理

    2024年02月02日
    瀏覽(27)
  • java實現(xiàn)將數據導出為word功能(文字,表格,圖片的循環(huán)導出)

    java實現(xiàn)將數據導出為word功能(文字,表格,圖片的循環(huán)導出)

    這里需要注意的點?。。。。。。。。。。。。。。。。?easypoi的版本必須在4.3.0以上,否則在導出圖片的時候,只會導出圖片的內存地址,卻不能顯示出圖片。 ?解釋一下模板中所填充的東西: 1.像這種:用兩個花括號括起來的變量名,到時候會將變量名所指代的數據填充進

    2024年02月02日
    瀏覽(31)
  • 【Python小技巧】使用Gradio輕松部署AI算法結果可視化Web 應用(含圖片轉換、驗證碼識別完整源碼)

    【Python小技巧】使用Gradio輕松部署AI算法結果可視化Web 應用(含圖片轉換、驗證碼識別完整源碼)

    隨著人工智能的不斷發(fā)展,各種智能算法越來越普遍,但是這些算法結果通常顯示在cmd命令窗口里。有沒有一種方法可以動態(tài)展示,更具需要計算后動態(tài)展現(xiàn)? 答案是有! 下面讓我了解一下Gradio庫,只需寥寥幾行代碼就可以展現(xiàn)出chatGPT的對話窗口,是不是很nice! Gradio是一

    2024年02月15日
    瀏覽(35)
  • 【微信小程序】使用weui組件庫來實現(xiàn)彈出一個確認的彈窗popup,其中包含圖片和名稱

    在微信小程序中,你可以使用weui組件庫來實現(xiàn)彈出一個確認的popup,并在其中包含圖片和名稱。以下是一個示例代碼: 在wxml文件中,添加一個按鈕來觸發(fā)彈出確認popup: 在wxss文件中,定義確認popup的樣式: 在js文件中,編寫相應的邏輯來顯示和隱藏確認popup,并傳遞圖片和名

    2024年02月17日
    瀏覽(96)
  • vue導出word文檔(含ECharts,多圖片,表格等)

    vue導出word文檔(含ECharts,多圖片,表格等)

    package.json 安裝文件包 ? ? ?1.導入插件包 ? 2.初始化echarts圖表時? 將echarts圖片轉為base64格式(為后續(xù)導出準備) ? 3.導出echarts圖片,格式轉換,官方自帶,不需要修改 ?4.導出word 具體實現(xiàn)方法(包含發(fā)郵件,上傳到服務器) 5.word文檔模板 效果圖: ? ? ? 1.如果有將文件流

    2024年02月13日
    瀏覽(48)
  • VUE使用docxtemplater導出word(帶圖片) 踩坑 表格循環(huán)空格 ,canvas.toDataURL圖片失真模糊問題

    VUE使用docxtemplater導出word(帶圖片) 踩坑 表格循環(huán)空格 ,canvas.toDataURL圖片失真模糊問題

    參考:https://www.codetd.com/article/15219743 安裝 關鍵代碼JS部分 導出函數 vue 中引入上述js文件和方法 模板內容 自己準備一個docx文檔,然后里面標注好需替換的參數 列表循環(huán)-- {#list}{name}{/list} 單個參數–{} 圖片–{%imgUrl} 大概就這些,我也是從參考鏈接里看到的,至此基本能解決

    2024年02月15日
    瀏覽(29)
  • JAVA之利用easypoi將word模板導出為pdf(可帶圖片)

    JAVA之利用easypoi將word模板導出為pdf(可帶圖片)

    EasyPoi是一款基于POI的Java快速導出/導入Excel工具。它在POI的基礎上進行了封裝,提供了更加簡潔易用的API,使得生成Excel文件更加容易和高效。 使用EasyPoi可以輕松地生成Excel文件,并支持多種格式,如xlsx、xls、csv等。同時,EasyPoi也支持讀取Excel文件,可以方便地獲取其中的數

    2024年02月08日
    瀏覽(29)
  • easypoi 導出word表格

    template.docx 模板內容: {{0}} {{1}} {{2}} {{3}} {{4}} {{5}} 學生姓名 學生年齡 學生生日 語文成績 數學成績 template_job.docx 模板內容: 名稱 年齡 地址 名稱2 {{user.name}} {{user.age}} {{user.address}} {{user.other}} 公司名稱 地址 {{$fe:jobs t.name t.address}}

    2024年02月13日
    瀏覽(32)
  • poi-tl導出word復雜表格(單元格合并,生成復雜表格)

    poi-tl導出word復雜表格(單元格合并,生成復雜表格)

    官方文檔地址:http://deepoove.com/poi-tl/ 源碼地址:https://github.com/Sayi/poi-tl poi-tl(poi template language)是Word模板引擎,使用Word模板和數據創(chuàng)建很棒的Word文檔。 最近在做項目時候有一個關于導出Word的文件的需求,需要導出的word文件較大,并且格式比較復雜,使用poi-tl可以很好的

    2024年02月16日
    瀏覽(23)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包