他の誰かが探しているなら、これもあります:https ://github.com/devongovett/pdfkit
hpdfよりも積極的に開発されているように見えますが、ドキュメントに記載されているように、ノードモジュールbrfsでbrowserifyを使用するだけでは機能しませんでした(最初にbrfsは静的パスでのみ機能しますが、生データを出力するようには見えませんでしたフォントが適切に)、私はそれを機能させるためにこれをしなければなりませんでした:
- フォントにcmap:openがない場合は、fontforgeを使用してフォントをttfとしてエクスポートします(エクスポートオプションにグリフマップを使用)。
- ttfファイルのbase64を文字列形式で取得します(Pythonを使用してttfファイルの内容を読み取り、base64でエンコードし、改行を削除してから、別のファイルに保存します)
- 文字列を変数としてスクリプトに貼り付けます
バッファオブジェクトを作成し、それをpdfkitを使用してフォントとして渡します。
fontCenturyGothicBase64 = "your base64 encoded string here";
fontCenturyGothic = new Buffer(fontCenturyGothicBase64, 'base64');
doc.font(fontCenturyGothic);
javascriptファイルでbrowserifyを使用します(バッファは純粋なjsではなくノードオブジェクトです)
たぶん、Bufferオブジェクトを使用せずに(したがってbrowserifyを使用せずに)可能ですが、私は試していません。