com.lowagie.text.DocumentException:无法识别带有'UniGB-UCS2-H'的字体'STSong-Light'

时间:2015-01-10 08:55:02

标签: maven itext

一个maven项目,当我想创建一个pdf时,发生了这样的事情:com.lowagie.text.DocumentException:Font' STSong-Light'使用' UniGB-UCS2-H'不被承认。

2 个答案:

答案 0 :(得分:1)

请查看免费电子书The ABC of PDF with iText的以下片段:

enter image description here

正如你所看到的,我用'UniGB-UCS2-H'作为编码创建了一个'STSong-Light'字体,我用它来写电影“十面埋伏”的中文标题。通过查看PDF的屏幕截图,您可以看到这种方法非常有效。

如果它对您不起作用,那么这可能是出错了:

  1. 您没有阅读文档(或者您希望等到有人复制/粘贴文档的快照),这解释了为什么您没有将itext-asian.jar包含到CLASSPATH中。这个jar可以在extrajars-2.3.zip
  2. 中找到
  3. 或者您确实阅读了文档,但是您没有在您的CLASSPATH中包含正确的itext-asian.jar。我看到你在代码中使用了我的名字(我是来自com.lowagie.text的Lowagie)。这意味着您使用的是多年前从所有官方服务器中删除的iText版本。 That version should no longer be used!
  4. 简而言之:您可以通过升级到最新的iText版本并确保包含itext-asian.jar来解决您的问题。

答案 1 :(得分:-1)

iTextSharp.text.io.StreamUtil.AddToResourceSearch(
    System.Reflection.Assembly.Load("iTextAsian")
)