Шрифты PDFsharp MigraDoc не работают в веб-приложении Azure - PullRequest
0 голосов
/ 29 ноября 2018

VS2017 .NET 4.7

Я написал веб-приложение, которое создает PDF, единственный связанный с ним пакет nuget, который я установил:

PDFsharp-MigrDoc-GDI v1.32.4334

Локально работает на моей машине для разработки.

Но когда я опубликовал его в Azure, я получаю сообщение об ошибке:

Данные шрифта не могутбыть извлечены.

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

Я также нашел это:

https://github.com/empira/PDFsharp/blob/master/src/PdfSharp/Fonts/PlatformFontResolver.cs

Но я начинаю путаться.Какие пакеты мне нужны?Нужен ли мне PDFsharp, MigraDoc или оба?

Любая помощь, указавшая меня в правильном направлении, поможет.ИЛИ ЖЕ.Простой пример решения «Hello World» в формате PDF (с использованием PDFsharpe / MigraDoc), которое работает в веб-приложении Azure.

Спасибо

1 Ответ

0 голосов
/ 29 ноября 2018

MigraDoc - это набор API для создания документов.

PDFsharp - это библиотека, которая создает PDF-файлы.

Если вы используете MigraDoc API, вам понадобятся MigraDoc и PDFsharp.Если вы используете только API PDFsharp, то вам нужен только пакет, включающий PDFsharp, но не MigraDoc.

Чтобы использовать IFontResolver, вам нужна версия WPF сборки 1.50 или выше.

С MigraDoc:
https://www.nuget.org/packages/PDFsharp-MigraDoc-wpf/1.50.4845-RC2a

Просто PDFsharp:
https://www.nuget.org/packages/PDFsharp-wpf/1.50.4845-RC2a

EZFontResolver может помочь упростить использование IFontResolver:
https://forum.pdfsharp.net/viewtopic.php?f=8&t=3244

PDFsharpпримеры включают образец FontResolver, который загружает шрифты из ресурсов:
https://github.com/empira/PDFsharp-samples

...