Como usar fontes privadas no PDFSharp
Estou tentando adicionar texto a um documento PDF usando privado, ou seja, não instalado no sistema, fontes TrueType e tendo problemas. Estou usando o PDFSharp + MigraDoc WPF versão 1.32.2608.0 do NuGet.
Encontrei vários itens no fórum e no StackOverFlow. O mais recente éesse stackoverflow artigo que se refere aeste exemplo no site PdfSharp. No entanto, este exemplo contém o código:
this.fontFamilies.Add(key, fontFamily);
na linha 22, mas não consigo encontrar nenhuma referência a fontFamilies na montagem.
Portanto, segui o que parecia ser umexcelente exemplo, mas não funciona para mim. Quando uso essa abordagem, posso adicionar a fonte com êxito, mas quando uso o comando:
var font = new XFont(fontStyle.Name, new XUnit(fontStyle.SizePt, XGraphicsUnit.Point), XFontStyle.Regular, _fontOptions);
OndefontStyle.Name
é o nome da fonte sem o # na frente. Nesse ponto, o PdfSharp quebra dentro doprivate void Initialise()
dentro do namespace PdfSharp.Drawing.
Inspecionando as variáveis dentro doInitialise
método neste momento, tem:
this.family != null
Encontrou o tipo de letra, ou seja,this.typeface != null
Eu estou assumindo que ele quebra na linhaif (!typeface2.TryGetGlyphTypeface(out typeface))
mas não tenho certeza.
Nota: Tentei as fontes .ttf e .otf sem sucesso.
Alguém poderia me apontar na direção certa, por favor?
AtualizarNo final, troquei paraPDFSharp WPF 1.50 beta como o manuseio da fonte é MUITO melhor. Veja issoSO post nas minhas segundas questões e informações sobre onovo resolvedor de fontes o que resolveu meu problema. Tudo está funcionando bem agora.