iText使用记录 导出pdf

首先导入jar包

<!--字体jar包,解决pdf不显示中文的问题-->
      <dependency>
          <groupId>com.itextpdf</groupId>
          <artifactId>itext-asian</artifactId>
          <version>5.2.0</version>
      </dependency>
      <!--iText核心jar包-->
      <dependency>
          <groupId>com.itextpdf</groupId>
          <artifactId>itextpdf</artifactId>
          <version>5.4.3</version>
      </dependency>

首先设置response

        response.setContentType("application/pdf");
        response.setHeader("Expires", "0");
        response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
        response.setHeader("Pragma", "public");

一切的开始,这个构造函数默认的纸张大小是A4

Document document = new Document();

创建一个PdfWriter

PdfWriter pdfWriter = PdfWriter.getInstance(document, response.getOutputStream());

打开document

document.open();

解决pdf不显示中文的问题

BaseFont bfChinese = BaseFont.createFont( "STSongStd-Light" ,"UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
            Font font = new Font(bfChinese, 12,Font.NORMAL);
            Font title = new Font(bfChinese, 20,Font.NORMAL);

设置一个titleParagraph

Paragraph titleParagraph = new Paragraph("标题\n\n", title);
设置居中,并写入document
titleParagraph.setAlignment(1);
document.add(titleParagraph);

创建一个table,参数设置列数

PdfPTable table = new PdfPTable(2);

设置table中的cell样式

            //设置最小行高
            table.getDefaultCell().setMinimumHeight(30);
            //设置水平和垂直居中
            table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER);
            table.getDefaultCell().setVerticalAlignment(Element.ALIGN_MIDDLE);

添加内容

table.addCell(new Paragraph("content",font));

最后将table添加至document,并关闭相关资源

            document.add(table);
            pdfWriter.close();
            document.close();

这样就可以用response生成一个简单的pdf可供下载和打印了。

 

 

使用iText库根据模板导出PDF文件,您可以按照以下步骤进行操作: 1. 首先,您需要将iText库添加到您的Java项目中。您可以在iText的官方网站(https://itextpdf.com/)上下载并导入相应的jar文件。 2. 加载模板PDF文件。您可以使用iTextPdfReader类来加载模板文件,例如: ```java PdfReader reader = new PdfReader("template.pdf"); ``` 3. 创建一个新的PdfWriter对象,将其与输出PDF文件相关联。您可以使用iTextPdfWriter类来实现这一点,例如: ```java PdfWriter writer = new PdfWriter("output.pdf"); ``` 4. 创建一个新的PdfDocument对象,并将其与模板文件和PdfWriter对象相关联。这将使您能够编辑和导出PDF文件。例如: ```java PdfDocument document = new PdfDocument(reader, writer); ``` 5. 获取特定页面的PdfPage对象,并创建一个PdfCanvas对象以在页面上绘制内容。例如: ```java PdfPage page = document.getPage(1); // 获取第一页 PdfCanvas canvas = new PdfCanvas(page); canvas.beginText(); canvas.setFontAndSize(PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD), 12); canvas.moveText(100, 700); canvas.showText("Hello, World!"); canvas.endText(); ``` 在这个示例中,我们在第一页上添加了一个文本元素。 6. 关闭文档并保存生成的PDF文件。例如: ```java document.close(); ``` 这样,您就可以使用iText库根据模板导出PDF文件了。请注意,iText库还提供了许多其他功能,例如添加表格、图片等,您可以根据自己的需求进行更多的PDF编辑操作。 希望对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值