0

我正在尝试使用嵌入在资源文件夹中的字体在 c# 中为水晶报表中的字段对象设置字体

`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);` 
4

1 回答 1

0

所以看起来你正在使用 IDAutomation 的条形码?您是否按照他们的安装说明在 Windows 窗体中使用该字体?

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

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

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

来源在这里

于 2013-11-18T02:41:40.537 回答