System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.InvalidOperationException: Cannot found font installed on the system.
at spr粗.ꘖ(String A_0, spr휣 A_1, String A_2)
at spr絃.퓉(String A_0, Single A_1, spr휣 A_2, String A_3, spr휣 A_4)
at spr絃.퓉(String A_0, Single A_1, spr휣 A_2, String A_3)
at spr絃.퓉(String A_0, Single A_1, spr휣 A_2)
at sprꩲ.퓉(String A_0, Single A_1, spr휣 A_2)
at sprꩲ.퓉(String A_0, Single A_1)
at spr帄..ctor()
at Spire.Barcode.BarCodeGenerator..ctor(IBarcodeSettings settings)
at Program.<Main>$(String[] args)
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
--- End of inner exception stack trace ---
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
at System.Reflection.MethodBaseInvoker.InvokeWithOneArg(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
- Code: Select all
var bs = new Spire.Barcode.BarcodeSettings();
bs.Type = Spire.Barcode.BarCodeType.Code39;
bs.Data = "*ABC 12345* ";
var bg = new Spire.Barcode.BarCodeGenerator(bs);
var skimage = bg.GenerateImage();
var data = skimage.Encode(SKEncodedImageFormat.Png, 100);
var stream = File.OpenWrite("/output/Spire.Barcode.png");
data.SaveTo(stream);
stream.Dispose();
skimage.Dispose();
Console.WriteLine("Spire.Barcode create!");
另外, 下面是帮助中的代码, 其中的HeiseiMinchoW3和TimesRoman字体在运行时也有类似的错误, 这两个需要安装某个字体集吗?
- Code: Select all
var pdf = new PdfDocument();
var page = pdf.Pages.Add();
var standardFont = new PdfFont(PdfFontFamily.TimesRoman, 12f);
page.Canvas.DrawString("Hello China, 你好 中國", standardFont, PdfBrushes.Black, new PointF(10, 10));
var trueTypeFont = new PdfTrueTypeFont("甜蜜早安吻", 12f, PdfFontStyle.Regular, true);
page.Canvas.DrawString("Hello China, 你好 中国", trueTypeFont, PdfBrushes.Black, new PointF(10, 30));
var cjkFont = new PdfCjkStandardFont(PdfCjkFontFamily.HeiseiMinchoW3, 12f);
page.Canvas.DrawString("你好 中國", cjkFont, PdfBrushes.Black, new PointF(10, 50));
pdf.SaveToFile("/output/Spire.Pdf.pdf", Spire.Pdf.FileFormat.PDF);
Console.WriteLine("Spire.Pdf create!");
刚刚又发现,使用Microsoft YaHei Mono字体,中文部分显示成了方块(该字体已经安装, 在spire.Doc和Pdf下都能正常显示), 而甜蜜早安吻字体下英文和中文显示正常!
- Code: Select all
var trueTypeFont = new PdfTrueTypeFont("甜蜜早安吻", 12f, PdfFontStyle.Regular, true); page.Canvas.DrawString("Hello China, 你好 中国!", trueTypeFont, PdfBrushes.Black, new PointF(10, 30));
var trueTypeFont2 = new PdfTrueTypeFont("Microsoft YaHei Mono", 12f, PdfFontStyle.Regular, true); page.Canvas.DrawString("Hello China, 你好 中國!", trueTypeFont2, PdfBrushes.Black, new PointF(10, 50));