在AS3中使用purepdf编写特殊字符

时间:2011-07-27 12:47:27

标签: actionscript-3 pdf encoding fonts flex4

我正在使用flex 4并需要导出一些pdf文件。我正在使用purePDF库。任何人都可以解释我如何使用purePDF在pdf文件中编写罗马尼亚字符 - >我需要写像ăîşţ等字符

我查看该库的wiki文档,但无法理解我需要的内容。感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:1)

我会问自己的问题,考虑到它对其他人有用。

注意:考虑到purepdf是与Java相当的iText库,当您遇到任何问题并需要文档时,您可以通过purePDF查阅iText文档以获取灵感。

所以这就是你需要做的事情:

  • 找到一个合适的“True Type”字体,其中包含您的特殊字符(扩展名为“ttf”)。对我来说,我发现在/ usr / share / fonts / truetype /*.
  • 将* .ttf字体文件复制到目录中以便在您的应用程序中使用(在我的情况下为“assets”目录)
  • 找到后,如果符合您的需要,可以通过以下代码尝试:

  public static const SERIF_NORMAL : String = "FreeSerif.ttf";

  //"assets/fonts/FreeSerif.ttf" is the directory where I copied my *.ttf files
  [Embed(source="assets/fonts/FreeSerif.ttf", mimeType="application/octet-stream")]
  private var serifNormalCls : Class;
  private var normalFont : Font;

  var bfNormal : BaseFont;
//...
  //in youre initialization function :
  FontsResourceFactory.getInstance().registerFont(SERIF_NORMAL, new this.serifNormalCls());
  bfNormal = BaseFont.createFont(SERIF_NORMAL, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);

  //and when you need to use your the special characters, you will use that font
  this.normalFont = new Font(Font.UNDEFINED, 10, Font.UNDEFINED, null, bfNormal);

干杯!