首页 文章

使用PDFsharp添加字体

提问于
浏览
1

我正在使用PDFsharp将文本添加到pdf中 . 但是当我使用下面的代码用这些字体添加以下文本时,我遇到了问题 . 在使用PDFsharp创建PDF之后以及在adobe reader中打开PDF时,我收到的消息是“无法找到或创建字体'绕组' . 某些字符可能无法正确显示或打印 . ”它打开了

我试图修改的源PDF包含字体Helvetica和Windings(嵌入式)

这是将文本添加到PDF的代码的一部分

Dim font As XFont = New XFont("Verdana", 20, XFontStyle.Regular)
gfx.DrawString("Hello, World!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
font = New XFont("WingDings", 20, XFontStyle.Regular)
gfx.DrawString("llll", font, XBrushes.Black, New XRect(25, 15, page.Width, page.Height), XStringFormats.Center)
font = New XFont("Helvetica", 20, XFontStyle.Regular)
gfx.DrawString("abcd", font, XBrushes.Black, New XRect(50, 25, page.Width, page.Height), XStringFormats.Center)

使用此代码后,文本会成功添加,但是当我在PDF阅读器中打开时,我收到错误(请参阅上面的错误消息) . 当我看到PDF属性中的字体时,我发现如下

黑体,宋体,绕组

但是Windings(Embedded)并不存在源代码pdf . 另外在创建的pdf中,添加的绕组字体显示其下的实际字体为Unknown(实际字体:未知) . 我认为这是错误 . 如何解决?另外我想知道如何在PDFsharp中添加winding-regular(嵌入子集)? This is我使用的源PDF . This is the在PDFsharp中修改后创建的PDF,它给出了错误 .

1 回答

  • 1

    使用PDFsharp,您必须指定嵌入字体(例如 PdfFontEmbedding.Alwayssee here) .

    默认情况下,不会嵌入字体 - PDF文件会更小,但在未安装此字体的计算机上显示时可能会出现问题 .

    AFAIK PDFsharp无法使用已嵌入PDF中的字体 .

相关问题