java - 如何将 UTF-8 字符串转换为日语或任何其他语言的 IText PDF?

标签 java xml pdf encoding utf-8

我正在使用 UTF-8 编码解析 XML,其中包含一些中文、日语或卡纳达语 我能够成功在屏幕(HTML)页面中显示语言,但我想生成 PDF,但我只看到英语...

我遇到了字体,但担心每种语言都有字体(如果我错了,抱歉)。

在 Debug模式下,当变量转换为 UTF -8 时,我可以在变量中看到中文和其他语言,我看到?????????。

                            new String(myString.getBytes(Charset.forName("ISO-8859-1")),
                                    Charset.forName("UTF-8"))

请帮助在 IText pdf 中显示任何语言

NOTE:I am parsing the XML using UTF-8,When I fetch from DB without using UTF or anything I am able to print in excel...in PDF I think I should use fonts.

最佳答案

UTF-8 能够表示所有语言的文本。 ISO-8859-1 只能表示英语文本以及少数欧洲语言的大多数文本。

如果您将文本转换为 ISO-8859-1,然后将其存储为 UTF-8,则会破坏对 ISO-8859-1 有限子集不支持的其他语言文本的支持。将其保留为 Unicode 形式(例如 UTF-8)。

正如评论中提到的,Java 字符串在内部是 Unicode 兼容的(它们在内部使用 UTF-16),因此不需要任何转换,甚至不需要转换为 UTF-8,即可完全支持所有语言。仅当您需要对用于导出为 PDF 的任何内容执行转换时,才需要进行转换,但您似乎并未指定具体内容。

关于java - 如何将 UTF-8 字符串转换为日语或任何其他语言的 IText PDF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46393145/

相关文章:

c# - 删除 XML 节点

linux - 使用 Linux 命令行 (FAX) 将 PDF 转换为 TIFF

javascript - PDF 嵌入在当前代码的 IE 上不起作用

c# - asp.net 在新页面中查看 pdf

java - RxJava Single/Observable 返回接口(interface)的实现

xml - 你如何解析 URN?

java - FTP 列表命令抛出 MalformedServerReplyException : Truncated server reply

java - 批量运行xpath表达式

Java 找不到服务器上存在的文件

java - 如何在 hibernate.cfg.xml 中配置物理命名策略?