2

私はnodejs + expressjs + mongodbプロジェクトを行っています.mongodbからデータを取得し、それをpdfファイルに書き込んでからexpressjsで送信する必要があります. データが日本語の文字であることと、エンコーディングがめちゃくちゃであることを除いて、すべて問題ないようです。次のように、pdfファイルを作成するためにpdfkitを使用しています。

var doc = new PDFDocument();

doc.info['Title'] = profile.firstName + " " + profile.lastName;

doc.fillColor('black')
    .text(profile.firstName + " " + profile.lastName, {
    paragraphGap: 10,
    indent: 20,
    align: 'justify',
    columns: 2
});

次に、ファイルのメタ情報とコンテンツの唯一の行が「kf Y'˛」と表示されます。これは「武大郎」である必要があります。

それで、pdfkitでエンコーディングを設定する方法はありますか? またはいくつかの回避策?

4

1 に答える 1

2

PDFKit は、TrueType (.ttf)、TrueType Collection (.ttc)、および Datafork TrueType (.dfont) 形式の埋め込みフォント ファイルをサポートしています。(ソース: http://pdfkit.org/docs/text.html#fonts )

こちらから TrueType (.ttf) 形式の日本語フォントをダウンロードしてください http://www.freejapanesefont.com/ipaex-gothic/

# Using a TrueType font (.ttf)
doc.font('fonts/ipaexg.ttf').text('武大郎')
于 2013-08-12T07:40:01.503 に答える