pdfsharp - встроить шрифт?

Мне дали файл, который имеет какой-то другой шрифт язык. Они не могут загрузить шрифт, поэтому они хотят, чтобы я вставил его в pdf.

теперь у меня есть только PDF Reader, поэтому я не могу редактировать или создавать pdf-файл. поэтому я решил быстро сделать это в C#.NET используя библиотеку PDFSharp, но я просто не могу понять, как вставлять шрифты с помощью pdfSharp?!

кроме того, это только 1 файл, который я должен обработать, поэтому, если вы знаете способ сделать это вручную, то это было бы здорово.

1 ответов


есть два способа сделать это. Для каждого шрифта, который вы хотите встроить следующим образом:

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.