2013-11-15 19 views
0

我想用我的嵌入式资源文件夹我[fieldObject] .ApplyFont(字体名)不工作

`FieldObject field; 
field = oRpt.ReportDefinition.ReportObjects["CouponCode3"] as FieldObject; 
PrivateFontCollection pfc = new PrivateFontCollection(); 
pfc.AddFontFile("~/Resources/IDAutomationHC39M.ttf"); 

unsafe 
{ 
    fixed (byte* pFontData = Properties.Resources.IDAutomationHC39M) 
    { 
     uint dummy = 0; 
     pfc.AddMemoryFont((IntPtr)pFontData, Properties.Resources.IDAutomationHC39M.Length); 
     AddFontMemResourceEx((IntPtr)pFontData, (uint)Properties.Resources.IDAutomationHC39M.Length, IntPtr.Zero, ref dummy); 
    } 
} 

Font barcodeFont = new Font(pfc.Families[0], 12); 
field.ApplyFont(barcodeFont);` 
+0

机器上安装了字体吗? –

+0

我不认为它会工作,除非字体安装在机器上。 –

+0

不,我试图使用我已经嵌入在我的解决方案中的字体。 fyi,我正在开发一个Windows窗体应用程序 – JosephLYapcengcoJr

回答

0

所以看起来要设定的字体在C#中的Crystal Reports字段对象的字体像你使用IDAutomation的条形码?你有没有按照他们的安装说明在Windows窗体中使用字体?

  1. 将软件包下载并解压缩到开发计算机的目录中。

  2. 将要使用的DLL复制到项目目录。不要将组件复制到bin目录;在编译项目时,项目文件夹中的DLL将自动复制到具有相关EXE文件的相应bin文件夹中。

  3. 为了安全起见,应用程序必须能够从本地驱动器安装后访问该控件。下面提供的示例应该有助于使用和打印图像的各种方法。

来源here