Java - 将TXT文本文件转换为PDF文件

TXT文本转PDF示例代码

Free Spire.PDF for Java 提供的TXT文本文件转为PDF文件的方法实际上是先通过 readTextFromFile 方法读取txt文件中的文本,然后再将读取的文件使用 PdfTextWidget.draw() 方法绘制到 PDF 页面上的指定位置。

该免费Java库还提供了接口,允许设置绘制文本的字体、字体颜色、对齐样式等。下面是一个简单的示例,展示了如何将一个TXT文件转换为一个PDF文件:

import com.spire.pdf.FileFormat;import com.spire.pdf.PdfDocument;import com.spire.pdf.PdfPageBase;importcom.spire.pdf.graphics.*;

importjava.awt.*;import java.awt.geom.Rectangle2D;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;

publicclass ConvertTextToPdf {

    publicstaticvoidmain(String[] args)throws Exception {

        //从TXT文件读取文本String text = readTextFromFile("C:\\Users\\Administrator\\Desktop\\文本.txt");

        //创建PdfDocument类的对象PdfDocument pdf =new PdfDocument();

        //添加一个页面PdfPageBase page = pdf.getPages().add();

        //创建PdfFont类的对象Font font =newFont("宋体", Font.PLAIN, 11);

        PdfTrueTypeFont font1 =new PdfTrueTypeFont(font);

        //创建PdfTextLayout类的对象PdfTextLayout textLayout =new PdfTextLayout();

        textLayout.setBreak(PdfLayoutBreakType.Fit_Page);

        textLayout.setLayout(PdfLayoutType.Paginate);

        //创建PdfStringFormat类的对象PdfStringFormat format =new PdfStringFormat();

        format.setLineSpacing(20f);

        //用读取的文本创建PdfTextWidget类的对象PdfTextWidget textWidget =new PdfTextWidget(text, font1, PdfBrushes.getBlack());

        //设置字符格式        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);

        //保存结果文件pdf.saveToFile("TXT转PDF.pdf", FileFormat.PDF);

    }

    publicstaticString readTextFromFile(String fileName)throws IOException {

        StringBuffer sb =new StringBuffer();

        BufferedReader br =newBufferedReader(new FileReader(fileName));

        String content =null;

        while((content = br.readLine()) !=null) {

            sb.append(content);

            sb.append("\n");

        }

        return sb.toString();

    }

}


散热风扇https://www.uv-semi.com/

深圳网站建设www.sz886.com

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容