あなたのPDF出力で異なる主なものの1つがフォントフェイスです。 wkhtmltopdfを使用するには、ブラウザに必要なのと同じ方法でオペレーティングシステムにフォントをインストールする必要があります。フォントの間隔やサイズの違いがページのレイアウトに影響する可能性があります。まず、ソースファイルでどのフォントを使用しようとしているのかを見て、それらをサーバーにインストールする必要があります。良いスタートはhereから、またはあなたのサーバーのディストリビューションのリポジトリからMicrosoftのコアフォントをインストールすることです。
これを回避する別の方法は、あなたのサーバにインストールせずに、URLからフォントにリンクするソースファイルのスタイルシートに@font-face
ディレクティブを使用することです:
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/CWB0XYA8bzo0kSThX0UTuA.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
Googleのウェブフォントの場合、あなたは代わりに、彼らのスタイルシートをインポートすることができます。チェックする
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet" />
もう一つは、ワークステーションとサーバー上のwkhtmltopdfのバージョンです。 wkhtmltopdf --version
を実行すると、現在インストールされているバージョンが表示されます。サーバーでwkhtmltopdfの古いバージョンが実行されている可能性があります。必要な機能を備えたwkhtmltopdfの最新バージョンをインストールする最も簡単な方法は、hereです。ディストリビューションのために静的にリンクされたLinuxバイナリをダウンロードすることができます。
最後に試してみるのは、異なる--margin-top
、--margin-right
、--margin-bottom
および--margin-left
引数を使用することです。より良い結果を得るのに役立つかもしれない--viewport-size
というフラグもあります。
wkhtmltopdf --viewport-size 1024x768 page.html output.pdf
、あなたのワークステーションとサーバーの両方でwkhtmltopdfの同じバージョンを使用している場合、あなたは、両方すでに上で同じ設定を使用している述べたように、しかし、これらの構成オプションは、違いを作るべきではありません。
あなたのDropBoxのリンクが機能していないようです。おそらく、スタックオーバーフローのimgurホスティングで画像をホストする編集ボックスから画像を再アップロードする必要があります。 –
ありがとうございました! – Gacek
wkhtmltopdfの2つのバージョンが同じであることを確認できますか? – Ruslan