当前位置: 首页 > wzjs >正文

河南网站设计价格营销型网站建设应该考虑哪些因素

河南网站设计价格,营销型网站建设应该考虑哪些因素,网线制作工具有哪些,免费网站建设哪个好Java使用itext pdf生成PDF文档 Java使用itextpdf生成PDF文档 在日常开发中,我们经常需要生成各种类型的文档,其中PDF是最常用的一种格式。本文将介绍如何使用Java和iText库生成包含中文内容的PDF文档,并通过一个具体的示例来展示整个过程。…

Java使用itext pdf生成PDF文档

Java使用itextpdf生成PDF文档

在日常开发中,我们经常需要生成各种类型的文档,其中PDF是最常用的一种格式。本文将介绍如何使用Java和iText库生成包含中文内容的PDF文档,并通过一个具体的示例来展示整个过程。

1. 引言

PDF(Portable Document Format)是一种广泛使用的文件格式,它能够保持文档的原始格式和布局,适用于跨平台共享和打印。在Java中,我们可以使用iText库来创建和操作PDF文档。本文将展示如何使用iText生成包含中文内容的PDF文档,并确保中文字符正确显示。

2. 准备工作

2.1 添加依赖

首先,我们需要在项目中添加iText库的依赖。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖:

Xml深色版本

<dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.13</version>
</dependency>

此外,为了方便处理文件路径和流操作,我们还可以引入Hutool库:

Xml深色版本

<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.31</version>
</dependency>

2.2 准备字体文件

由于PDF默认不支持中文字符,我们需要准备一个支持中文的字体文件,例如Dengl.ttf。将该字体文件放置在项目的合适位置,以便后续加载使用。

3. 代码实现

3.1 创建PDF文档

以下是生成包含中文内容的PDF文档的完整代码示例:

Java深色版本

package com.util.pdf;import com.itextpdf.text.*;
import com.itextpdf.text.pdf.*;import java.io.FileOutputStream;
import java.nio.file.Files;
import java.nio.file.Paths;public class AstartPDFExport {public static void main(String[] args) {Document document = new Document();try {PdfWriter.getInstance(document, Files.newOutputStream(Paths.get("xxxx.pdf")));document.open();// 加载中文字体BaseFont bf = BaseFont.createFont("Font/Dengl.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);Font font = new Font(bf, 9);// 添加标题Font boldFont = new Font(bf, 12, Font.BOLD);Paragraph title = new Paragraph("一个小浪吴呀", boldFont);title.setAlignment(Element.ALIGN_CENTER);document.add(title);// 添加日期Paragraph date = new Paragraph("2025-06-18", font);date.setAlignment(Element.ALIGN_RIGHT);date.setSpacingAfter(10);document.add(date);// 创建表格PdfPTable table = new PdfPTable(2); // 表格有两列table.setWidthPercentage(100);float[] columnWidths = {30f, 70f}; // 第一列占 30%,第二列占 70%table.setWidths(columnWidths);addCell(table, "一个小浪吴呀", "一个小浪吴呀", font);// 付款明细表格PdfPTable detailsTable = new PdfPTable(5); // 五列detailsTable.setWidthPercentage(100);float[] detailColumnWidths = getColumnWidths(5, 30f);detailsTable.setWidths(detailColumnWidths);// 表头String[] headers = {" 明细", " 商品", " 价格", " 数量", " 备注"};int minimumHeight = 20;for (String header : headers) {PdfPCell headerCell = new PdfPCell(new Paragraph(header, font));headerCell.setMinimumHeight(minimumHeight);headerCell.setHorizontalAlignment(Element.ALIGN_LEFT);detailsTable.addCell(headerCell);}// 数据行PdfPCell cell;cell = new PdfPCell(new Paragraph(" 一个小浪吴呀", font));cell.setHorizontalAlignment(Element.ALIGN_LEFT);cell.setMinimumHeight(minimumHeight);detailsTable.addCell(cell);document.add(detailsTable);// 收款账户信息Paragraph accountInfo = new Paragraph("AAAA 一个小浪吴呀\n" +"BBBB 一个小浪吴呀\n" +"CCCC 一个小浪吴呀\n" +"DDDD 一个小浪吴呀\n" +"EEEE 一个小浪吴呀\n" +"FFFF 一个小浪吴呀", font);document.add(accountInfo);document.close();} catch (Exception e) {e.printStackTrace();}}private static void addCell(PdfPTable table, String label, String value, Font font) {PdfPCell cell = new PdfPCell(new Paragraph(label, font));cell.setPadding(5);table.addCell(cell);cell = new PdfPCell(new Paragraph(value, font));cell.setPadding(5);table.addCell(cell);}public static float[] getColumnWidths(int totalColumns, float firstColumnWidthPercent) {if (totalColumns < 1) throw new IllegalArgumentException("至少需要一列");float[] widths = new float[totalColumns];widths[0] = firstColumnWidthPercent;float remainingWidth = 100 - firstColumnWidthPercent;float otherColumnWidth = remainingWidth / (totalColumns - 1);for (int i = 1; i < totalColumns; i++) {widths[i] = otherColumnWidth;}return widths;}
}

3.2 运行结果

运行上述代码后,将会生成一个名为xxxx.pdf的PDF文件。以下是生成的PDF文件的效果图:

image-20250618154121338

4. 总结

本文介绍了如何使用Java和iText库生成包含中文内容的PDF文档。通过加载合适的中文字体文件,我们可以确保中文字符在PDF中正确显示。希望本文对你有所帮助,如果你有任何问题或建议,请随时留言交流。


文章转载自:

http://6QtLAuSf.Lhzqn.cn
http://c21KH1fE.Lhzqn.cn
http://hWVaNzRp.Lhzqn.cn
http://9fbkbnCE.Lhzqn.cn
http://HYl5JEhn.Lhzqn.cn
http://UBetDWH4.Lhzqn.cn
http://tsFj8yZ5.Lhzqn.cn
http://hhnITg0v.Lhzqn.cn
http://qzXfMhDg.Lhzqn.cn
http://aLBsqW6M.Lhzqn.cn
http://arjsgUR9.Lhzqn.cn
http://UJbO7okT.Lhzqn.cn
http://EuypRo4G.Lhzqn.cn
http://527EFQDw.Lhzqn.cn
http://yaqBwtIp.Lhzqn.cn
http://uW6WyOAx.Lhzqn.cn
http://QgvZgYeM.Lhzqn.cn
http://wIlTcX4k.Lhzqn.cn
http://60p3PEKV.Lhzqn.cn
http://pcOq7FC2.Lhzqn.cn
http://aHxGbd0s.Lhzqn.cn
http://BuEs2Jt1.Lhzqn.cn
http://t9GSdvJM.Lhzqn.cn
http://AzlUqTtQ.Lhzqn.cn
http://8T8wQ1pQ.Lhzqn.cn
http://pBDO57bZ.Lhzqn.cn
http://1QsUVU8J.Lhzqn.cn
http://ty8KtZfB.Lhzqn.cn
http://1SfLU3IU.Lhzqn.cn
http://Akypg0Fc.Lhzqn.cn
http://www.dtcms.com/wzjs/651858.html

相关文章:

  • 做微信投票的网站定制网站开发公司哪家好?点击查看
  • seo站长查询房产网签合同平台
  • 网站优化软件推荐在线学习
  • 西宁网站建设企业建设学校网站需要具备
  • 国内wordpress博客seo网站地图怎么做
  • 单位建设网站申请报告传奇网页版在线玩
  • 广州做网站mxszptiis 网站无法访问
  • da面板做两个网站小红书的网络营销方法
  • wordpress中上传整站网站搭建设计方案
  • 微网站幻灯片尺寸软件开发培训去哪报名
  • 彩页设计网站打开一个网站
  • 哪里有建设网站中的视频下载wordpress实现瀑布流
  • 色一把做最好的网站服装设计资源网站
  • 怎样登录柳州建设网站seo优化人员
  • 网站后台分类做js题目的网站
  • 捕鱼网站开发为什么凡科网做的网站无法搜索
  • 网站开发建设付款方式网站建设等级定级
  • 借个网站备案号商城类网站建设步骤
  • 做彩票的网站吗群推广网站
  • 加盟网站制作费用集团公司网站开发方案
  • framework7做网站有什么网站可以做电台
  • 西宁做网站君博相约wordpress自定义后台菜单
  • 营销型网站建设的小技巧网站域名购买
  • 深圳网站建设好吗wordpress文章不能写入关键词
  • 注册网站填写不了地区WordPress 知更鸟主题
  • dz网站收款即时到账怎么做的北京网页制作设计
  • 哪个视频网站做视频赚钱什么是网站app建设
  • 考百度指数 某个关键词在某个行业网站上的淘宝客网站备案
  • 食品类网站模板地方网站域名
  • 电脑网站打不开怎么解决全国文明城市创建工作