我正在研究一個C#.NET WPF桌面應用程序,該應用程序將生成需要非特定字體的PDF,該字體不會安裝在系統上。我正在使用PdfSharp-WPF v1.32。文件importantSc.ttf
位於項目資源文件夾中。在PDFsharp中使用私有TTF字體
我最好的選擇是我的URI路徑是錯誤的,但我認爲我是正確的。我的字體系列名稱是正確的,因爲它在字體安裝在我的開發計算機上時工作正常。
using System;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
using Microsoft.Win32;
using PdfSharp.Drawing.Layout;
using System.Collections.Generic;
using System.Windows.Input;
using System.Windows;
namespace MyProject
{
public class MyPdfFile
{
private PdfDocument doc;
public void MakePdf()
{
Double x1, y1;
XBrush brush = XBrushes.Black;
XGraphics xgf = XGraphics.FromPdfPage(page);
doc = new PdfDocument();
PdfPage page = doc.AddPage();
// Load in a private font to use.
XPrivateFontCollection privateFontCollection = new XPrivateFontCollection();
String fontFamilyName = "Important Script AM";
String fontUriPath = @"pack://application:,,,/importantSc.ttf";
Uri fontUri = new Uri(fontUriPath);
privateFontCollection.Add(fontUri, "./#" + fontFamilyName);
XFont font = new XFont(fontFamilyName, 9, XFontStyle.Regular); // <-- the error happens here
//Add text to page
x1 = 1.96 * 72;
y1 = 3.25 * 72;
String printString = "I wish this would work!";
xgf.DrawString(printString, font, brush, x1, y1);
xgf.Dispose();
}
}
}
我收到以下錯誤:
'System.InvalidOperationException' 類型的未處理的異常發生在PdfSharp-WPF.dll
其他信息:無法獲取匹配字形字體爲'重要腳本AM'。