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

Java實現(xiàn)將TXT文本文件轉(zhuǎn)換為PDF文件

 更新時間:2024年02月27日 12:00:24   作者:E-iceblue  
與TXT文本文件,PDF文件更加專業(yè)也更適合傳輸,所以這篇文章小編主要為大家詳細介紹了如何使用Java實現(xiàn)將TXT文本文件轉(zhuǎn)換為PDF文件 ,需要的可以參考下

與TXT文本文件,PDF文件更加專業(yè)也更適合傳輸,常用于正式報告、簡歷、合同等場合。項目中如果有使用Java將TXT文本文件轉(zhuǎn)為PDF文件的需求,可以查看本文中介紹的免費實現(xiàn)方法。

免費Java PDF庫

本文介紹的方法需要用到Free Spire.PDF for Java,該免費庫支持多種操作、轉(zhuǎn)換PDF文檔的功能。其官方介紹如下:

免費Java PDF組件

下載安裝:從以下鏈接下載最新版本并添加引用到你的Java項目中。或者通過Mave倉庫安裝。

https://www.e-iceblue.cn/Downloads/Free-Spire-PDF-JAVA.html

TXT文本轉(zhuǎn)PDF示例代碼

Free Spire.PDF for Java 提供的TXT文本文件轉(zhuǎn)為PDF文件的方法實際上是先通過 readTextFromFile 方法讀取txt文件中的文本,然后再將讀取的文件使用 PdfTextWidget.draw() 方法繪制到 PDF 頁面上的指定位置。

該免費Java庫還提供了接口,允許設(shè)置繪制文本的字體、字體顏色、對齊樣式等。下面是一個簡單的示例,展示了如何將一個TXT文件轉(zhuǎn)換為一個PDF文件:

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.*;
 
import java.awt.*;
import java.awt.geom.Rectangle2D;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
 
public class ConvertTextToPdf {
    public static void main(String[] args) throws Exception {
        //從TXT文件讀取文本
        String text = readTextFromFile("C:\\Users\\Administrator\\Desktop\\文本.txt");
 
        //創(chuàng)建PdfDocument類的對象
        PdfDocument pdf = new PdfDocument();
        //添加一個頁面
        PdfPageBase page = pdf.getPages().add();
 
        //創(chuàng)建PdfFont類的對象
        Font font = new Font("宋體", Font.PLAIN, 11);
        PdfTrueTypeFont font1 = new PdfTrueTypeFont(font);
 
        //創(chuàng)建PdfTextLayout類的對象
        PdfTextLayout textLayout = new PdfTextLayout();
        textLayout.setBreak(PdfLayoutBreakType.Fit_Page);
        textLayout.setLayout(PdfLayoutType.Paginate);
 
        //創(chuàng)建PdfStringFormat類的對象
        PdfStringFormat format = new PdfStringFormat();
        format.setLineSpacing(20f);
 
        //用讀取的文本創(chuàng)建PdfTextWidget類的對象
        PdfTextWidget textWidget = new PdfTextWidget(text, font1, PdfBrushes.getBlack());
        //設(shè)置字符格式
        textWidget.setStringFormat(format);
 
        //將文本添加到PDF頁面的指定位置
        Rectangle2D.Float bounds = new Rectangle2D.Float();
        bounds.setRect(0,25,page.getCanvas().getClientSize().getWidth(),page.getCanvas().getClientSize().getHeight());
        textWidget.draw(page, bounds, textLayout);
 
        //保存結(jié)果文件
        pdf.saveToFile("TXT轉(zhuǎn)PDF.pdf", FileFormat.PDF);
    }
    public static String readTextFromFile(String fileName) throws IOException {
        StringBuffer sb = new StringBuffer();
        BufferedReader br = new BufferedReader(new FileReader(fileName));
        String content = null;
        while ((content = br.readLine()) != null) {
            sb.append(content);
            sb.append("\n");
        }
        return sb.toString();
    }
}

輸入輸出文檔示例:

通過運行以上代碼就可以讀取txt文件的內(nèi)容生成PDF文件。如果還需要在PDF文件中添加圖片、表格、形狀等各種元素,可以通過Free Spire.PDF提供的其他API接口來實現(xiàn)。

方法補充

除了上文的方法,小編還為大家整理了其他Java將TXT轉(zhuǎn)為pdf的方法,希望對大家有所幫助

方法一:

引用jar包:

  	<dependency>
        <groupId>org.xhtmlrenderer</groupId>
        <artifactId>flying-saucer-pdf</artifactId>
        <version>9.1.2</version>
    </dependency>
    <dependency>
        <groupId>cn.lesper</groupId>
        <artifactId>iTextAsian</artifactId>
        <version>2.0</version>
    </dependency>    

Java代碼

package yll2023;
 
import java.io.FileOutputStream;
import java.io.IOException;
 
import com.lowagie.text.*;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfWriter;
 
/**
 * 將文本內(nèi)容轉(zhuǎn)成pdf
 * @author y
 *
 */
public class ObjectToPdf {
    
    public void strToPdf() throws DocumentException, IOException {
        Document document = new Document();
        PdfWriter.getInstance(document,new FileOutputStream("E:\\a\\test.pdf"));
        BaseFont bfChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
        Font font = new Font(bfChinese,12,Font.NORMAL);
        // 設(shè)置標題
        Paragraph pHeader = new Paragraph("line",font);
        // 設(shè)置標題居中
        pHeader.setAlignment(Element.ALIGN_CENTER);
        
        // 設(shè)置正文
        Paragraph ph = new Paragraph("content",font);
        document.open();
        document.add(pHeader);
        document.add(ph);
        document.close();
    }
}

方法二

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

import java.io.FileOutputStream;
import java.io.IOException;

public class TextToPdfConverter {

    public static void main(String[] args) {
        String text = "Hello, World! This is a sample text.";

        try {
            PdfDocument pdfDocument = new PdfDocument(new PdfWriter(new FileOutputStream("output.pdf")));
            Document document = new Document(pdfDocument);

            Paragraph paragraph = new Paragraph(text);
            document.add(paragraph);

            document.close();
            System.out.println("PDF created successfully.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

到此這篇關(guān)于Java實現(xiàn)將TXT文本文件轉(zhuǎn)換為PDF文件 的文章就介紹到這了,更多相關(guān)Java TXT轉(zhuǎn)PDF內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實現(xiàn)批量合并Excel工作表

    Java實現(xiàn)批量合并Excel工作表

    這篇文章主要為大家詳細介紹了如何使用Java快速實現(xiàn)批量Excel工作表的合并,文中的示例代碼代碼講解詳細,有需要的小伙伴可以跟隨小編一起學習一下
    2023-10-10
  • 實例分析java中重載與重寫的區(qū)別

    實例分析java中重載與重寫的區(qū)別

    這篇文章主要介紹了實例分析java中重載與重寫的區(qū)別,需要的朋友可以參考下
    2014-07-07
  • Java8中stream流的collectingAndThen方法應用實例詳解

    Java8中stream流的collectingAndThen方法應用實例詳解

    Java8中的Stream流提供了collectingAndThen方法,用于對歸納結(jié)果進行二次處理,文章通過User類的數(shù)據(jù)填充,演示了如何使用該方法進行集合去重、查找最高工資員工、計算平均工資等操作,感興趣的朋友跟隨小編一起看看吧
    2025-03-03
  • 詳談java編碼互轉(zhuǎn)(application/x-www-form-urlencoded)

    詳談java編碼互轉(zhuǎn)(application/x-www-form-urlencoded)

    下面小編就為大家?guī)硪黄斦刯ava編碼互轉(zhuǎn)(application/x-www-form-urlencoded)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • springBoot?之spring.factories擴展機制示例解析

    springBoot?之spring.factories擴展機制示例解析

    這篇文章主要為大家介紹了springBoot?之spring.factories擴展機制示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • 在IDEA中配置Selenium和WebDriver的具體操作

    在IDEA中配置Selenium和WebDriver的具體操作

    在自動化測試領(lǐng)域Selenium是一款非常流行的開源工具,它支持多種瀏覽器,并提供了豐富的API供開發(fā)者使用,而WebDriver則是Selenium的一個重要組件,它負責驅(qū)動瀏覽器執(zhí)行測試腳本,這篇文章主要給大家介紹了在IDEA中配置Selenium和WebDriver的具體操作,需要的朋友可以參考下
    2024-10-10
  • Spring Security如何基于Authentication獲取用戶信息

    Spring Security如何基于Authentication獲取用戶信息

    這篇文章主要介紹了Spring Security如何基于Authentication獲取用戶信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java處理UnresolvedAddressException異常的問題及解決

    Java處理UnresolvedAddressException異常的問題及解決

    這篇文章主要介紹了Java處理UnresolvedAddressException異常的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-05-05
  • 解決spring boot網(wǎng)關(guān)gateway導致的坑,無法下載文件問題

    解決spring boot網(wǎng)關(guān)gateway導致的坑,無法下載文件問題

    這篇文章主要介紹了解決spring boot網(wǎng)關(guān)gateway導致的坑,無法下載文件的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • 詳解RabbitMQ延遲隊列的基本使用和優(yōu)化

    詳解RabbitMQ延遲隊列的基本使用和優(yōu)化

    這篇文章主要介紹了詳解RabbitMQ延遲隊列的基本使用和優(yōu)化,延遲隊列中的元素都是帶有時間屬性的。延遲隊列就是用來存放需要在指定時間被處理的元素的隊列,需要的朋友可以參考下
    2023-05-05

最新評論

城固县| 盘山县| 上虞市| 郯城县| 陆良县| 历史| 博乐市| 白水县| 中西区| 湾仔区| 钟祥市| 崇义县| 凤冈县| 五原县| 六盘水市| 始兴县| 瑞金市| 剑川县| 赤峰市| 罗田县| 文登市| 哈尔滨市| 江北区| 观塘区| 泊头市| 松阳县| 东丽区| 阜宁县| 东兰县| 天柱县| 巢湖市| 夏邑县| 京山县| 青铜峡市| 隆回县| 深泽县| 屏东县| 屏东市| 安新县| 和田市| 龙里县|