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

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格

這篇具有很好參考價值的文章主要介紹了【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

這篇文章,主要介紹itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格。

目錄

一、itext7操作PDF內容

1.1、添加段落文本內容

1.2、添加列表內容

1.3、添加圖片

1.4、添加表格

(1)列寬采用點單位(pt點單位)

(2)采用百分比單位(%百分比)


一、itext7操作PDF內容

1.1、添加段落文本內容

itext中將文本抽象為一個Text對象,這個Text屬于葉子元素,不能直接添加到Document里面,必須先放入布局元素(layout元素)里面,然后再將布局元素加入到Document中。itext中采用Paragraph類表示段落,這是對一個段落文字的描述,例如:將Text對象先添加到Paragraph段落對象中,然后將Paragraph段落加入到Document里面。


package itext.demo.basic;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.AreaBreak;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Text;

import java.io.FileNotFoundException;

/**
 * @version 1.0.0
 * @Date: 2023/7/19 15:40
 * @Author ZhuYouBin
 * @Description: 文本內容操作
 */
public class TextOperation {
    public static void main(String[] args) throws FileNotFoundException {
        // 創(chuàng)建PDF文檔
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter("D:\\itext-content.pdf"));
        // 創(chuàng)建文檔對象
        Document document = new Document(pdfDocument);
        // 創(chuàng)建文本對象
        Text text = new Text("hello world");
        // 創(chuàng)建段落
        Paragraph paragraph = new Paragraph();
        paragraph.add(text);
        // 將段落添加到文檔上面
        document.add(paragraph);
        // 關閉文檔
        document.close();
        pdfDocument.close();
    }
}

運行結果如下所示:

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格,【WPSP筆記】,itext7,itext操作pdf,Java操作PDF文件,itext操作圖片,itext7添加表格

1.2、添加列表內容

itext中使用List類表示列表對象,列表可以有序列表、無序列表,列表中的每一項使用ListItem類表示,一個List列表可以包含多個ListItem列表項,List列表可以設置縮進、列表項的符號等。


package itext.demo.basic.text;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.List;
import com.itextpdf.layout.element.ListItem;

import java.io.FileNotFoundException;

/**
 * @version 1.0.0
 * @Date: 2023/7/19 15:40
 * @Author ZhuYouBin
 * @Description: 添加列表內容
 */
public class TextOperation {
    public static void main(String[] args) throws FileNotFoundException {
        // 創(chuàng)建PDF文檔
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter("D:\\itext-content.pdf"));
        // 創(chuàng)建文檔對象
        Document document = new Document(pdfDocument);
        // 創(chuàng)建List列表對象
        List list = new List();
        list.setSymbolIndent(12); // 設置列表項和符號之間的縮進距離
        list.setListSymbol("@"); // 設置列表項的符號
        // 創(chuàng)建列表項
        for (int i = 0; i < 5; i++) {
            list.add(new ListItem("this is 00" + i + " item。"));
        }
        // 將List列表添加到文檔上面
        document.add(list);
        // 關閉文檔
        document.close();
        pdfDocument.close();
    }
}

運行結果如下所示:

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格,【WPSP筆記】,itext7,itext操作pdf,Java操作PDF文件,itext操作圖片,itext7添加表格

1.3、添加圖片

itext中將圖片抽象成一個Image對象,圖片可以從URL、File等來源進行創(chuàng)建,Image類中的構造方法是protected修飾的,所以不能直接使用new關鍵字進行創(chuàng)建對象,可以使用itext中提供的ImageDataFactory工具類,這個類中提供了一個create()方法可以根據不同的來源創(chuàng)建圖片對象。


package itext.demo.basic.text;

import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
import java.net.URL;

/**
 * @version 1.0.0
 * @Date: 2023/7/19 15:40
 * @Author ZhuYouBin
 * @Description: 添加圖片
 */
public class TextOperation {
    public static void main(String[] args) throws Exception {
        // 創(chuàng)建PDF文檔
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter("D:\\itext-content.pdf"));
        // 創(chuàng)建文檔對象
        Document document = new Document(pdfDocument);
        // 創(chuàng)建圖片對象
        URL url = new URL("https://www.toopic.cn/public/uploads/small/1658043292312165804329268.png");
        Image image = new Image(ImageDataFactory.create(url));
        image.setAutoScale(true); // 設置寬高字段縮放

        URL url2 = new URL("https://www.toopic.cn/public/uploads/small/1658043887555165804388773.jpg");
        Image image2 = new Image(ImageDataFactory.create(url2));
        image2.setAutoScale(true); // 設置寬高字段縮放
        // 將圖片添加到文檔上面
        document.add(image);
        document.add(image2);
        // 關閉文檔
        document.close();
        pdfDocument.close();
    }
}

運行結果如下所示(添加兩張圖片的效果):

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格,【WPSP筆記】,itext7,itext操作pdf,Java操作PDF文件,itext操作圖片,itext7添加表格

1.4、添加表格

itext中將表格抽象成了Table類,表格就是一張二維表,由行和列組成,其中每一行每一列都是一個單元格,單元格使用Cell類表示。創(chuàng)建Table對象的時候,對應的構造方法必須指定表格中每一個單元格的寬度,列寬度的單位可以是pt、也可以設置百分比,推薦使用百分比單位。

(1)列寬采用點單位(pt點單位)


package itext.demo.basic.text;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Div;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.UnitValue;

/**
 * @version 1.0.0
 * @Date: 2023/7/19 15:40
 * @Author ZhuYouBin
 * @Description: 添加表格【pt單位】
 */
public class TableDemo {
    public static void main(String[] args) throws Exception {
        // 創(chuàng)建PDF文檔
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter("D:\\itext-table.pdf"));
        // 創(chuàng)建文檔對象
        Document document = new Document(pdfDocument);
        // 創(chuàng)建表格
        float[] columnWidths = new float[] {
                30, 50, 60, 20
        };
        Table table = new Table(columnWidths);
        // 設置表格寬度100%
        table.setWidth(UnitValue.createPercentValue(100));
        // 設置表格標題
        table.setCaption(new Div().add(new Paragraph("this is a caption of table")));
        // 添加表頭單元格,上面設置了四列,超過四列會自動換行
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        // 添加普通單元格
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        // 添加表尾單元格
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        // 添加表格到PDF文檔
        document.add(table);
        // 關閉文檔
        document.close();
        pdfDocument.close();
    }
}

運行結果如下所示:

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格,【WPSP筆記】,itext7,itext操作pdf,Java操作PDF文件,itext操作圖片,itext7添加表格

(2)采用百分比單位(%百分比)


package itext.demo.basic.text;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Div;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.UnitValue;

/**
 * @version 1.0.0
 * @Date: 2023/7/19 15:40
 * @Author ZhuYouBin
 * @Description: 添加表格【百分比單位】
 */
public class TableDemo {
    public static void main(String[] args) throws Exception {
        // 創(chuàng)建PDF文檔
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter("D:\\itext-table.pdf"));
        // 創(chuàng)建文檔對象
        Document document = new Document(pdfDocument);
        // 創(chuàng)建百分比單位的列寬度
        UnitValue[] columnWidths = new UnitValue[] {
                UnitValue.createPercentValue(25),
                UnitValue.createPercentValue(25),
                UnitValue.createPercentValue(25),
                UnitValue.createPercentValue(25)
        };
        Table table = new Table(columnWidths);
        // 設置表格寬度100%
        table.setWidth(UnitValue.createPercentValue(100));
        // 設置表格標題
        table.setCaption(new Div().add(new Paragraph("this is a caption of table")));
        // 添加表頭單元格,上面設置了四列,超過四列會自動換行
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        table.addHeaderCell(new Cell().add(new Paragraph("header-cell")));
        // 添加普通單元格
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        table.addCell(new Cell().add(new Paragraph("cell")));
        // 添加表尾單元格
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        table.addFooterCell(new Cell().add(new Paragraph("footer-cell")));
        // 添加表格到PDF文檔
        document.add(table);
        // 關閉文檔
        document.close();
        pdfDocument.close();
    }
}

運行結果如下所示:

【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格,【WPSP筆記】,itext7,itext操作pdf,Java操作PDF文件,itext操作圖片,itext7添加表格

到此,itext操作PDF內容之添加段落、列表、圖片、表格就介紹完啦。

綜上,這篇文章結束了,主要介紹itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格。文章來源地址http://www.zghlxwxcb.cn/news/detail-604939.html

到了這里,關于【itext7】itext7操作PDF文檔之添加段落文本內容、添加List列表、添加Image圖片、添加Table表格的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

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

相關文章

  • SpringBoot Thymeleaf iText7 生成 PDF(2023/08/29)

    近期在項目種遇到了實時生成復雜 PDF 的需求,經過一番調研和測試,最終選擇了采用 Thymeleaf 和 iText7 來實現(xiàn)需求,本文將詳細介紹實現(xiàn)過程。 通過 Thymeleaf 渲染生成需要的頁面內容; 通過 iText7 html2pdf 庫將 Thymeleaf 渲染的結果轉換成 PDF; 將 PDF 內容寫入到接口輸出流中返回

    2024年02月10日
    瀏覽(54)
  • Java中Itext生成Pdf,并給PdfCell添加圖片
  • Spire.PDF for .NET【文檔操作】演示:合并 PDF 文件并添加頁碼

    Spire.PDF for .NET【文檔操作】演示:合并 PDF 文件并添加頁碼

    需要合并 PDF 的原因有很多。例如,合并 PDF 文件允許您打印單個文件,而不是為打印機排隊多個文檔,組合相關文件通過減少要搜索和組織的文件數(shù)量來簡化管理和存儲多個文檔的過程。在本文中,您將學習如何使用Spire.PDF for .NET將多個 PDF 文檔合并為一個 PDF 文檔,以及如

    2024年04月09日
    瀏覽(26)
  • 【PDFBox】PDFBox操作PDF文檔之添加本地圖片、添加網絡圖片、圖片寬高自適應、圖片水平垂直居中對齊

    【PDFBox】PDFBox操作PDF文檔之添加本地圖片、添加網絡圖片、圖片寬高自適應、圖片水平垂直居中對齊

    這篇文章,主要介紹PDFBox操作PDF文檔之添加本地圖片、添加網絡圖片、圖片寬高自適應、圖片水平垂直居中對齊。 目錄 一、PDFBox操作圖片 1.1、添加本地圖片 (1)案例代碼 (2)運行效果 (3)方法介紹 1.2、添加網絡圖片 (1)案例代碼 (2)運行效果 1.3、圖片寬高自適應(

    2024年02月16日
    瀏覽(40)
  • 【python-docx】文本操作(段落、run、標題、首行縮進、段前段后、多倍行距、對齊方式)

    1.概念 塊級元素(block-level) 是指作為一個整體的元素,典型的是段落(paragraph)。 行內元素(inline) ,你可以把它理解為一部分塊級元素,即一個塊級元素包含一個或多個行內元素,典型的是run對象(我也不知道run應該翻譯成什么)。 舉個例子,你在Word回車換行開始輸入

    2024年02月11日
    瀏覽(30)
  • 怎么在PDF添加文本框?6種快速向PDF添加文字教程

    怎么在PDF添加文本框?6種快速向PDF添加文字教程

    有時您可能希望填寫表格或在 PDF 文件中留下評論。這需要您將文本框和文本添加到 PDF。文本框是一個文本字段,您可以在其中鍵入文本。但是,除非您使用專用的 PDF 編輯器,否則編輯 PDF 文件具有挑戰(zhàn)性。了解正確的 PDF 工具和將文本框添加到 PDF的簡單方法可以幫助您高效

    2024年01月23日
    瀏覽(18)
  • 100天精通Python丨辦公效率篇 —— 12、Python自動化操作 office-word(word轉pdf、轉docx、段落、表格、標題、頁面、格式)

    100天精通Python丨辦公效率篇 —— 12、Python自動化操作 office-word(word轉pdf、轉docx、段落、表格、標題、頁面、格式)

    本文收錄于 《100天精通Python專欄 - 快速入門到黑科技》專欄 ,是由 CSDN 內容合伙人丨全站排名 Top 4 的硬核博主 不吃西紅柿 傾力打造。 基礎知識篇以理論知識為主 ,旨在幫助沒有語言基礎的小伙伴,學習我整理成體系的精華知識,快速入門構建起知識框架; 黑科技應用篇

    2023年04月18日
    瀏覽(41)
  • PDF 文檔處理:使用 Java 對比 PDF 找出內容差異

    PDF 文檔處理:使用 Java 對比 PDF 找出內容差異

    不論是在團隊寫作還是在個人工作中,PDF 文檔往往會經過多次修訂和更新。掌握 PDF 文檔內容的變化對于管理文檔有極大的幫助。通過對比 PDF 文檔,用戶可以快速找出文檔增加、刪除和修改的內容,更好地了解文檔的演變過程,輕松地管理文檔。本文將介紹如何通過 Java 程

    2024年02月08日
    瀏覽(44)
  • PDF或圖片文檔內容識別、關系抽取

    PDF或圖片文檔內容識別、關系抽取

    ? ? ? ? 自動識別法院和公積金中心的文書(調解書、判決書、裁定書、通知書)掃描件(PDF或圖片),獲取特定結構的數(shù)據,自動對比。抽取結構如: 執(zhí)行 搭建label studio標記,標記完成后導出JSON。 Label Studio JSON轉Doccano JSON 構造數(shù)據集 工具,命名為utils.py ? 訓練 ?模型部

    2024年02月08日
    瀏覽(36)
  • 用python提取PDF中各類文本內容的方法

    用python提取PDF中各類文本內容的方法

    從PDF文檔中提取信息,是很多類似RAG這樣的應用第一步要處理的事情,這里需要做好三件事: 提取出來的文本要保持信息完整性,也就是準確性 提出的結果需要有附加信息,也就是要保存元數(shù)據 提取過程要完成自動化,也就是流程化 然而,在我們開始之前,我們需要指定目

    2024年02月01日
    瀏覽(20)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包