小编Min*_*ges的帖子

使用PDFBOX以正确的字符表示形式编写阿拉伯语而不会分开

我正在尝试使用PDFBox Apache生成包含阿拉伯文本的PDF,但该文本会作为分隔的字符生成,因为Apache将给定的阿拉伯字符串解析为一系列常规的“正式” Unicode字符,等效于隔离的阿拉伯字符形式。

这是一个示例:
要在PDF中写入的目标文本“应该在PDF文件中输出”-> ???? ???????
我在PDF文件中得到的内容->

不正确的文字

我尝试了一些方法,但这里没有用:
1.将String转换为位流并尝试提取正确的值
2.使用UTF-8 && UTF-16处理String字节序列并从中提取值

有一种方法看起来很有希望获得每个字符的“ Unicode”值,但是它会生成通用的“官方Unicode”,这就是我的意思。

System.out.println( Integer.toHexString( (int)(new String("????").charAt(1))) );  
Run Code Online (Sandbox Code Playgroud)

输出为644,但fee0是预期的输出,因为此字符位于中间,那么我应该得到中间的Unicode fee0

所以我想要的是一种生成正确Unicode而不只是官方的方法

以下链接的第一个表中最左侧的列表示常规Unicode
阿拉伯语Unicode表Wikipedia

java pdf pdf-generation pdfbox

4
推荐指数
2
解决办法
1422
查看次数

标签 统计

java ×1

pdf ×1

pdf-generation ×1

pdfbox ×1