0

我有一个从 pdf 模板创建 pdf 的函数。该模板包含 6 行文本。

其中 5 行的字体应为“Myriad Pro”。这工作正常。另一行(“名称”)应为“TheSerif”字体。我们通过合法供应商购买了这种字体。这条线似乎不起作用。该函数不会引发错误,但在输出 PDF 中该行不可读。

我对两种字体都使用相同的程序,所以我不知道为什么第二种字体不起作用。

  BaseFont Myriad = null;
  BaseFont TheSerif = null;

  Myriad = BaseFont.CreateFont("D:\\Drukwerk\\MYRIADPRO-REGULAR.OTF", BaseFont.WINANSI, BaseFont.EMBEDDED);
  TheSerif = BaseFont.CreateFont("D:\\Drukwerk\\TSer6C__.pfm", BaseFont.WINANSI, BaseFont.EMBEDDED);

  pdfFormFields.SetFieldProperty("name", "textfont",TheSerif , null); 
  pdfFormFields.SetFieldProperty("Function", "textfont",Myriad, null);
  pdfFormFields.SetFieldProperty("telephone", "textfont",Myriad, null);  
  pdfFormFields.SetFieldProperty("mobile", "textfont",Myriad, null);  
  pdfFormFields.SetFieldProperty("fax", "textfont",Myriad, null);    
  pdfFormFields.SetFieldProperty("emailadres", "textfont",Myriad, null); 

编辑:我将字体创建更改为以下

TheSerif = BaseFont.CreateFont("D:\\Drukwerk\\TSer6C__.pfm", 
                                BaseFont.WINANSI,
                                BaseFont.EMBEDDED, 
                                true, 
                                FileToByteArray("D:\\Drukwerk\\TSer6C__.afm"), 
                                FileToByteArray("D:\\Drukwerk\\TSer6C__.pfb"));

该函数将 pfb 和 afm 文件作为参数。我现在收到以下错误:“不是有效的 .pfm 文件”

4

1 回答 1

2

PFM 文件是用于 postscript 字体的字体度量文件(Printer Font Metric)。该文件不包含任何字符绘制命令。

PFM 文件通常与包含字形图的 PFB 或 PFA 文件一起使用,这是您应该使用的文件。

于 2012-10-19T10:24:03.187 回答