如何为html2ps添加条形码支持?

use*_*898 2 perl fonts barcode

我们使用html2ps Perl脚本将HTML转换为PostScript.我知道这不是最好的解决方案,但这是开发人员在这里所做的事情(这是在我的时间之前).

现在我们需要实现对显示每个HTML的条形码字体的支持,并且需要在每个转换后的PostScript文件中显示.你怎么做到这一点?

F'x*_*F'x 6

好的,我只使用字体(没有图像,根据需要).方法如下:

  • 拿你的条形码字体(我对条形码一无所知,所以我采用了Code 128免费软件TrueType字体; 下载链接).
  • 将其变为带有扩展名的Postcript(类型1)字体.pfa.我使用fontforge执行此转换,如下所示:打开ttf字体,选择"文件">"生成字体",使用"PS Type 1(ASCII)",并关闭可能的警告.
  • 所以现在,我将PS Type 1格式的字体"Code128bWin"放在一个名为的文件中Code128bWin.pfa.
  • 创建简约测试文档(test.html):
<html>
 <head></head>
 <body>
  <p>This is a test:</p>
  <h4>BARCODE</h4>
 </body>
</html>
Run Code Online (Sandbox Code Playgroud)
  • 创建一个配置文件(这需要时间来理解;你不能把它作为内联CSS放在HTML中;它需要是html2ps的配置文件).因此,创建一个名为的文件config:
H4 { font-family: Code128bWin }

@html2ps {
  font {
    Code128bWin {
      names: "Code128bWin";
      files: "Code128bWin.pfa";
    }
  }
}
Run Code Online (Sandbox Code Playgroud)
  • 因此,<h4>标签中的文本将使用代码栏字体呈现.您现在通过运行以下命令生成Postscript输出:html2ps -f config test.html > test.ps

欢迎评论!

作为旁注:这显然是丑陋的,但有时需要入侵现有流程,所以我不会判断OP.我认为这个解决方案满足所有约束 :)