iText7彻底解决中文问题、特殊字符(如......省略号报错问题,其他的自测)

itext7填充PDF模板(二)填充pdf模板 本篇文章主要讲解的是如何采用itext7进行模板填充。 创建PdfReader PdfWriter,构造函数支持路径已经流的形式。 创建PDFDocument 创建并设置中文字体 获取文本域的信息 判断文本框长度是否够单行显示 填充信息 设置模板不可编辑 private static void fillParam(PdfReader pdfReader, PdfWriter... 阅读详情

1.我使用省略号报错如下

java.lang.NullPointerException
    at com.itextpdf.kernel.font.PdfType0Font.getCidFontType2(PdfType0Font.java:720)
    at com.itextpdf.kernel.font.PdfType0Font.flushFontData(PdfType0Font.java:808)
    at com.itextpdf.kernel.font.PdfType0Font.flush(PdfType0Font.java:597)
    at com.itextpdf.kernel.pdf.PdfDocument.flushFonts(PdfDocument.java:1794)
    at com.itextpdf.kernel.pdf.PdfDocument.close(PdfDocument.java:792)
    at com.itextpdf.layout.Document.close(Document.java:120)
    at com.gsafety.plan.module.util.Testp.main(Testp.java:26)

2.字体设置(推荐第二种)

//1.中文设置 这个不能识别省略号
PdfFont sysFont = PdfFontFactory.createFont("STSongStd-Light", "UniGB-UCS2-H", false);
//2.中文设置,解决特殊字符错误,使用的是系统字体
PdfFont sysFont = PdfFontFactory.createFont("c://windows//fonts//simsun.ttc,1",PdfEncodings.IDENTITY_H, false);
iText7使用PdfFont遇特殊字符如‘凉’字报空指针,中文打印乱码问题--最终解决方案!! 首先看原来的代码: PdfFont font = PdfFontFactory.createFont(“STSongStd-Light”, “UniGB-UCS2-H”, true); 遇到凉字跟特殊字符会空指针异常.,具体如下。 java.lang.NullPointerException at com.itextpdf.kernel.font.PdfType0Font.getCidFontType2(PdfType0Font.java:720) at com.itextpdf.ker... 阅读详情

相关推荐

iText 7中文与特殊字符PDF生成:解决NullPointerException的字体方案

在PDF生成技术中,字体编码与字符集支持是核心基础。其原理在于PDF渲染引擎需要将文本字符映射到字体文件中的具体字形(glyph),当默认字体库缺失对应字符时,编码过程会失败。这直接影响了文档的国际化和特殊符号兼容性,对生成多语言合同、财务报告等场景至关重要。iText 7作为广泛使用的Java PDF库,其默认字体对中文及扩展字符集支持有限,开发者常遇到NullPointerException问题。通过理解字体加载机制,采用支持Unicode的字体文件(如思源黑体)并正确配置IDENTITY_H编码,可以

weixin_34326558的博客 413

itext7使用PdfFont,内容包含部分中文(凉)、特殊字符(……、·、€)时报空指针异常

itext7使用PdfFont,内容包含部分中文(凉)、特殊字符(……、€)时报空指针异常

全绽开发工程师的博客 4673

iText7处理行首行末中文标点符号

iText7处理行首行末中文标点符号

iText7报错com.itextpdf.kernel.font.PdfType0Font.getCidFontType2(PdfType0Font.java:720)解决

感性的plato的博客 2125

esp32s3 spi camera gc6133调试

gc6133 spi只有master模式,同时需要esp32提供主时钟,需要有主时钟然后才能通过i2c进行初始化.测试了几种方式,记录如下。

hclydao的专栏 1564

卡尔曼滤波、互补滤波与Tsinghua滤波:平衡车姿态感知的三大算法对比

本文对比了平衡车姿态感知中的卡尔曼滤波、互补滤波与Tsinghua滤波三大核心算法。互补滤波计算简单,适合入门;卡尔曼滤波理论最优但实现复杂;Tsinghua滤波则是一种面向嵌入式优化的轻量级方案,通过动态权重调整和零偏估计,在资源受限的MCU上实现了性能与效率的平衡,是智能车竞赛等场景的实用选择。

weixin_29232121的博客 349

iText 7中文与特殊字符处理:解决NullPointerException的完整指南

在PDF生成领域,字体嵌入与字符编码映射是确保文档跨平台一致显示的核心技术原理。PDF标准要求将所用字体或字符子集嵌入文件内部,以实现设备无关的渲染效果,这直接关系到文档的可访问性、可打印性和长期归档价值。在Java开发中,iText 7作为主流的PDF操作库,其底层采用“按需索取”机制处理字形信息,当字体无法正确映射到文本中的Unicode字符时,就会触发NullPointerException,导致生成流程中断。这一问题的典型应用场景包括处理中文、全角标点、货币符号等混合内容。本文以iText 7为例,

weixin_30600197的博客 439

【Transformer 相关理论深入理解】注意力机制、自注意力机制、多头注意力机制、位置编码

transformer原理

qq_38253797的博客 2万+

使用itext低版本2.1.7支持pdf的中文、特殊符号

使用2.1.7的低版本是因为最后一个MPL和LGPL协议的版本。用于商业没有问题。但发现用起来对中文、特殊符号不友好。

qq979147923的博客 4016

Stata实战:5步搞定PSM倾向得分匹配(附完整代码与常见报错解决)

本文详细介绍了使用Stata进行PSM(倾向得分匹配)的5步实战流程,包括数据预处理、模型构建、匹配算法选择、匹配质量诊断和结果解释。提供完整代码示例和常见报错解决方案,帮助研究者高效完成实证分析,提升匹配成功率。

weixin_29214559的博客 590

算法 A 求稳健平均值和稳健标准差

文章目录算法原理代码 算法原理 算法 A 来自 GB/T 6379.5。应用此算法计算得到数据平均值和标准差的稳健值。稳健性是估计算法的特点,而不是其产生的估计值的特点,因此严格来说,称由此算法计算的平均值和标准差是稳健的是不确切的。然而,为避免使用繁琐的术语,“稳健均值”和“稳健标准差”应理解为利用稳健算法计算的总体均值和总体标准差的均值估计。 设数据为 xi,i∈(1,2,⋯ ,n)x_i, i\in(1,2,\cdots,n)xi​,i∈(1,2,⋯,n),记稳健平均值为 x∗,s∗x^*, s^*x

zhuo木鸟的博客 9254

java pdfbox encoding_Java PDFBox - 读取和修改带有特殊字符的pdf(变音符号)

您不能只替换字符串中的文本 . 我不轻易说 . 我曾经多年前在Acrobat上工作,并在初始版本中使用了文本搜索工具,因此我对文本编码问题有了相当深刻的理解 . 主要问题是PDF中的每个字符串都以某种方式编码 . 这是因为PDF是在Unicode通常可用之前制作的,并且在PostScript中具有历史记录 . PosctScript喜欢为字体提供非常灵活的编码方法,并鼓励重新编码 .让我们退后一...

weixin_29938187的博客 852

企业微信开发007_域名主体校验未通过,需配置备案主体与当前企业主体相同或有关联关系的域名_企业内部自建应用开发_配置可信域名_回调URL_可信IP---企业微信开发009

因为我这个企业微信是,已经注册了服务商了,所以我又注册了一个不是服务商的测试企业,没有实名认证的,去试了试。而且,网络上找的教程,都是不够详细的,还是会碰到各种各样的问题,记录下来,为后来者提供便利。首先我用natapp.cn 申请了一个免费的域名,然后去,一个,企业微信上去配置,注意。我这个域名,的主体,可能是域名服务商,比如阿里域名 等等的 不是一般的企业域名。我这个企业微信,是开通了服务商的,企业微信,右上角有服务商管理后台的。到时候,直接用,他们自己企业注册的域名,已经备案的再去尝试,

添柴程序猿的专栏 1697

Java使用itextpdf生成上下标(化学符号,数学表达式)

itextpdf生成上下标(化学符号,数学表达式) 自定义上下标

m0_56055726的博客 1779

基于互联网的智能旧衣回收箱设计与实现

本文介绍了基于嵌入式系统的智能旧衣回收箱的设计与实现,涵盖了硬件设计、软件开发、图像识别、物联网连接等方面的内容。通过利用最新的技术,如图像识别、物联网和云计算,实现了智能、便捷的旧衣物回收系统。未来,随着技术的不断进步,智能回收系统将会在环保领域发挥更大的作用。

2201_76125393的博客 908

金融领域图注意力网络的创新应用

随着金融市场的日益复杂和数据量的爆炸式增长,传统的数据分析方法在处理金融数据的复杂关系和结构时面临诸多挑战。图注意力网络(Graph Attention Network,GAT)作为一种新兴的深度学习技术,能够有效处理图结构数据,挖掘数据中的潜在关系。本文的目的在于深入探讨图注意力网络在金融领域的创新应用,涵盖风险评估、投资决策、欺诈检测等多个方面。通过理论分析、算法实现和实际案例展示,为金融从业者和研究者提供全面的技术参考,推动图注意力网络在金融领域的广泛应用。

AI云原生与云计算技术学院 720

itext 生成pdf 输出特殊符号 ®

在进行生成pdf的时候,偶尔我们会遇到这种情况输出特殊字符,例如® 如果遇到这种情况,最关键的还是字体 BaseFont bfChi = BaseFont.createFont(rootPathString+"/plugins/font/simsun.ttc,1", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);Font font14 = new F...

weixin_30662011的博客 1800

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

利用itextpdf实现PDF显示上下标

因公司要动态生成PDF文档,并且需要生成同时带有上下标的PDF段落,搜遍度娘,只有单边生成上标或下标的文章。最后无奈自行研究。最终造出能同时显示上下标的PDF段落。以上进行记录,作个留念。 具体实现思路如下(过程表述可能较混乱,请有不明白、不理解的朋友留言相互交流): 1. 以pdfCell进行显示段落,对需要同时生成上下标的段落,添加(上下标,适用于html)标记<sup></sup>或<sub></sub> 2. 对每个段落,进行上下...

nhljl13的专栏 1434

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

java+pdf特殊字符_java – iText不喜欢我的特殊字符

我正在尝试使用iText生成pdf文件.文件生成得很好,但我似乎可以使用德国ä,ö等特殊字符…我想写的句子是(例如)■ …ä…ö…但输出是â– …ä…ö…(我不得不模糊句子,但我猜你看到我在说什么…)不知何故,这个黑色块事物和所有“Umlaute”都无法生成……使用的字体如下:private static Font smallBold = new Font(Font.FontFamily.TI...

weixin_30151653的博客 1472

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

java itextpdf 生成pdf文件

因项目需求,需要在java代码中生成pdf文件,之前没做过类似的功能,所以网上查了一下后,采用了普遍使用的itextpdf的方式。 这篇文章包含了一些特殊的需求,比如采用正则表达式处理html代码,特殊字符写入pdf等。如果有需要的,希望能帮到各位。 1、本文采用的jar包版本: <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId>

aw277866304的博客 1211

HTML的第一天,介绍下网页组成及相关知识,大家一起学习

HTML第一天 我们接下来是进行的网页开发网页的相关概念: 什么是网页? 什么是HTML? 网页的形成? 什么是网页: 1.网站是指在因特网上根据一定的规则,使用 HTML 等制作的用于展示特定内容相关的网页集合。 2.网页是网站中的一“页”,通常是 HTML 格式的文件,它要通过浏览器来阅读。 网页的组成: 1.网页是构成网站的基本元素,它通常由图片、链接、文字、声音、视频等元素组成。通常我们看到的网页,常见以 .htm 或 .html 后缀结尾的文件,因此将其俗称为 HTML 文件。 [外链图片转存

weixin_51612633的博客 696

ireport特殊字符变成乱码的解决办法

后台传入ireport中的参数是GBK编码,ireport不能正常显示其中的特殊字符例如“·······”,所以要先将GBK格式转成支持更多中文编码的GB2312就可以了。new String("param".getBytes("GBK"),"GB2312")可以在ireport的文本字段表达式里直接写,也可以在后台写。

keketrtr的专栏 4695
上一篇: iText7初步使用:生成简单的pdf文件
下一篇: Java 使用iText7生成带页码的PDF文件(同时生成目录,但是不会合并两个PDF)
Qssn丶
博客等级 码龄11年 88粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值