我正在尝试使用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