我获得了一个包含其他语言字体的文件。他们无法下载字体,因此他们希望我将其嵌入到pdf中。
现在,我只有PDF阅读器,所以我无法编辑或创建PDF文件。所以我决定使用PDFSharp库在C#.NET中快速完成它,但我似乎无法弄清楚如何使用pdfSharp嵌入字体?!
另外,我只需要处理一个文件,所以如果你知道一种手动方式,那就太棒了。
答案 0 :(得分:14)
有两种方法可以做到这一点。对于要嵌入的每种字体,如下所示:
var options = new XPdfFontOptions(PdfFontEmbedding.Always);
var font = new XFont("Times New Roman", 12, XFontStyle.Regular, options);
然后,如果您使用该字体,它将被嵌入。
如果您想要嵌入页面上使用的所有字体,您可以这样做:
var page = new PdfPage();
var gfx = XGraphics.FromPdfPage(page);
gfx.MFEH = PdfFontEmbedding.Automatic;
第二种方法也适用于MigraDoc代码中使用的任何字体。