最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java在PDF中添加表格過程詳解

 更新時(shí)間:2019年07月04日 15:34:04   作者:Miaonly  
這篇文章主要介紹了Java在PDF中添加表格過程詳解,本文將介紹通過Java編程在PDF文檔中添加表格的方法。添加表格時(shí),可設(shè)置表格邊框、單元格對(duì)齊方式、單元格背景色、單元格合并、插入圖片、設(shè)置行高、列寬、字體、字號(hào)等,需要的朋友可以參考下

前言

本文將介紹通過Java編程在PDF文檔中添加表格的方法。添加表格時(shí),可設(shè)置表格邊框、單元格對(duì)齊方式、單元格背景色、單元格合并、插入圖片、設(shè)置行高、列寬、字體、字號(hào)等。

使用工具:Free Spire.PDF for Java (免費(fèi)版)

Jar文件獲取及導(dǎo)入:

  • 方法1:通過官網(wǎng)下載jar文件包。下載后,解壓文件,將lib文件夾下的Spire.Pdf.jar文件導(dǎo)入Java程序。
  • 方法2:通過maven倉庫安裝導(dǎo)入

Java 代碼示例

Java代碼

import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import com.spire.pdf.grid.PdfGrid;
import java.awt.*;
public class AddTable {
  public static void main(String[]args){
    //創(chuàng)建文檔,添加PDF頁面
    PdfDocument pdf = new PdfDocument();
    PdfPageBase page = pdf.getPages().add();
    //創(chuàng)建PdfGrid對(duì)象
    PdfGrid grid = new PdfGrid();
    //設(shè)置單元格內(nèi)邊距、默認(rèn)字體、字體顏色和默認(rèn)背景色
    grid.getStyle().setCellPadding(new PdfPaddings(3,3,3,3));
    grid.getStyle().setFont(new PdfTrueTypeFont(new Font("Arial Unicode MS", Font.PLAIN,10), true));
    grid.getStyle().setTextBrush(PdfBrushes.getBlack());

    //創(chuàng)建PdfBorders對(duì)象,并設(shè)置顏色及粗細(xì)
    PdfBorders borders= new PdfBorders();
    borders.setAll(new PdfPen(PdfBrushes.getWhite(),1f));

    //定義數(shù)據(jù)
    String[] data = {"學(xué)校;Logo;院校代碼;院校地址",
        "四川大學(xué);;10610;成都",
        "西南交通大學(xué);;10613;成都",
        "電子科技大學(xué);;10614;成都",
        "西南石油大學(xué);;10615;成都",
    };
    String[][] dataSource = new String[data.length][];
    for (int i = 0; i < data.length; i++) {
      dataSource[i] = data[i].split("[;]");
    }

    //填充數(shù)據(jù)到表格
    grid.setDataSource(dataSource);

    //在表格第2列填充圖片并設(shè)置列寬
    grid.getRows().get(1).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("scdx.png"));
    grid.getRows().get(2).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("xnjtdx.png"));
    grid.getRows().get(3).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("dzkjdx.png"));
    grid.getRows().get(4).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("xnsydx.png"));
    grid.getColumns().get(1).setWidth(100f);

    //縱向合并單元格
    grid.getRows().get(1).getCells().get(3).setRowSpan(4);

    //設(shè)置表格
    for (int i = 0; i < data.length ; i++) {
      //設(shè)置每一行的高度
      grid.getRows().get(i).setHeight(50f);
      //設(shè)置第一列的字體
      grid.getRows().get(i).getCells().get(0).getStyle().setFont(new PdfTrueTypeFont(new Font("Arial Unicode MS",Font.PLAIN,12),true));

      for(int j =0;j<grid.getColumns().getCount();j++){
        //設(shè)置所有單元格居中
        grid.getRows().get(i).getCells().get(j).setStringFormat(new PdfStringFormat(PdfTextAlignment.Center,PdfVerticalAlignment.Middle));
        //設(shè)置第一行的背景色
        grid.getRows().get(0).getCells().get(j).getStyle().setBackgroundBrush(PdfBrushes.getBeige());
      }
    }
    //繪制表格到PDF
    grid.draw(page,0,30);
    //保存文檔
    pdf.saveToFile("添加表格.pdf");
    pdf.close();
  }
}

表格添加效果:

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

  • 簡(jiǎn)單學(xué)習(xí)Java抽象類要點(diǎn)及實(shí)例

    簡(jiǎn)單學(xué)習(xí)Java抽象類要點(diǎn)及實(shí)例

    這篇文章主要介紹了Java抽象類要點(diǎn)及實(shí)例,有需要的朋友可以參考一下
    2014-01-01
  • 提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解

    提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解

    這篇文章主要為大家介紹了提升網(wǎng)絡(luò)請(qǐng)求穩(wěn)定性HttpClient的重試機(jī)制深入理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • SpringBoot如何統(tǒng)一清理數(shù)據(jù)

    SpringBoot如何統(tǒng)一清理數(shù)據(jù)

    這篇文章主要介紹了SpringBoot如何統(tǒng)一清理數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 初識(shí)Spark入門

    初識(shí)Spark入門

    這篇文章主要介紹了初識(shí)Spark入門,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Java中數(shù)組的使用與注意事項(xiàng)詳解(推薦)

    Java中數(shù)組的使用與注意事項(xiàng)詳解(推薦)

    數(shù)組是一組地址連續(xù)、長度固定的具有相同類型的數(shù)據(jù)的集合,通過數(shù)組下標(biāo)我們可以指定數(shù)字中的每一個(gè)元素,下面這篇文章主要給大家介紹了關(guān)于Java中數(shù)組的使用與注意事項(xiàng)的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • springboot項(xiàng)目或其他項(xiàng)目使用@Test測(cè)試項(xiàng)目接口配置

    springboot項(xiàng)目或其他項(xiàng)目使用@Test測(cè)試項(xiàng)目接口配置

    這篇文章主要介紹了springboot項(xiàng)目或其他項(xiàng)目使用@Test測(cè)試項(xiàng)目接口配置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • java實(shí)現(xiàn)簡(jiǎn)單點(diǎn)贊功能

    java實(shí)現(xiàn)簡(jiǎn)單點(diǎn)贊功能

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單點(diǎn)贊功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • SpringBoot自定義線程池,執(zhí)行定時(shí)任務(wù)方式

    SpringBoot自定義線程池,執(zhí)行定時(shí)任務(wù)方式

    這篇文章主要介紹了SpringBoot自定義線程池,執(zhí)行定時(shí)任務(wù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • 最新評(píng)論

    洞口县| 日照市| 毕节市| 弥渡县| 平山县| 临夏县| 仁寿县| 长垣县| 邵阳县| 绥滨县| 湘西| 遂宁市| 延津县| 莆田市| 盘山县| 奇台县| 巨野县| 六安市| 乌兰县| 宁陕县| 建瓯市| 延寿县| 布尔津县| 墨玉县| 贵港市| 体育| 监利县| 定兴县| 齐河县| 墨脱县| 金秀| 拜泉县| 金乡县| 衡水市| 五大连池市| 手游| 浦北县| 威远县| 平利县| 阳城县| 峡江县|