HTML到PDF批处理模式转换器尊重CSS' s @ font-face?

时间:2014-12-05 16:18:59

标签: php html pdf pdf-generation

注意:我的请求涵盖了软件或库,因此我在此发帖。我也在这里检查了类似的线程,但他们要求一些微妙的不同。

我有以下HTML页面:

<html>
<head>
   <link rel="stylesheet" type="text/css" href="font.css">
   <style>
      body {
        font-family: "Gotham SSm A";
        font-size: 22px;
      }
   </style>
</head>
<body>
   SUMMARY
</body>
</html>

font.css中的字体定义(为简洁而截断):

@font-face { 
   font-family: "Gotham SSm A"; 
   src: url(data:font/truetype;base64,...) format('truetype'); 
   font-weight:700; 
   font-style:italic; 
}

页面在浏览器中显示正常,从浏览器打印到PDF时,也可以正常显示。但是,我用于从服务器端软件(PHP)生成PDF的每个实用程序都失败了:

  1. Wkhtmltopdf,PhantomJS和PrinceXML没有显示正确的字体(后者发出了关于不解析所有CSS规则的警告)。

  2. SlimerJS无法渲染,打开窗户,并且无法接受 依赖

  3. pandoc只转换为LaTeX并需要不同的实用程序(on Windows / Linux)转到PDF。更重要的是,它的LaTeX转换 (根据在线版本我trie)搞砸了字体 好。

  4. 我有什么选择?我需要这个......

    1. Respect modern CSS (including @font-face).
    2. Be available on Windows & Linux with similar output on both
    3. Be offline (utility or library is fine)
    4. Allow commercial use
    5. Be cost effective (preferably free)
    

2 个答案:

答案 0 :(得分:1)

查看 PrinceXML

它符合您的所有技术要求。它是免费供私人使用(我不知道商业用途时的定价水平)。

答案 1 :(得分:1)

callas软件(观看它,我是这家公司的附属公司!)有一项他们一直致力于称为pdfChip的技术,它将完美地完成这项工作。它不是免费的,但它将使用简单的命令行工具处理HTML + CSS + Javascript。它可以生成良好的,可打印的PDF(包括PDF / X,元数据,专业色彩空间,条形码等......)。

我不能指出你的URL,因为它将在2015年1月发布,但如果你想知道它是否可行,请给我发私信。