ABCPDF - CSS Embedded @Fontface无效

时间:2014-05-21 01:53:30

标签: c# .net pdf abcpdf

我正在寻找这个问题的明确答案,因为我只能找到分散的信息。

在我们的网站css中,我们使用@fontface嵌入式webfont。当我们使用ABCPDF渲染页面的pdf时,字体不会显示。我们使用addImageurl获取网站页面,使用addHtml添加我们自己的个性化封面。

我们正在使用msHTML引擎。

有没有人有过使用非系统/标准字体和使用嵌入式网络字体的经验?

谢谢

1 个答案:

答案 0 :(得分:1)

ABC不支持@fontface。

但是,如果您在使用addImageHTML()时事先知道字体是什么(如果内容来自您自己的服务器),则可以使用自定义字体。

您需要做的就是在您的服务器上安装字体(例如,我在这里使用OpenSans),然后在您的CSS中引用它,如下所示:

@font-face {
    font-family: 'open_sansregular';
    src: url('../fonts/OpenSans-Regular-webfont.eot');
    src: url('../fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
}

body
{
    font-family: Open Sans, 'open_sansregular', sans-serif;
}

这里的关键是:

    font-family: Open Sans 

一部分。这将尝试引用一个名为" Open Sans"在本地计算机上,而不是呈现HTML。 AbcPDF会拿起并使用它(我自己也做过)。