どもです。
ウェブサイト上でPDFファイルを作成する手段はいくつかありますが、今回は「wkhtmltopdf」について。
こいつが既に導入されているサイトで、新たなPDF生成システムを作ることに。
サンプルが明朝体だったので、いつものノリで明朝のfont-familyを指定。
HTML上での正常な反映を確認。さあPDF出力、ポン。
待て待ておい待て待て待て!!!
明朝体どころか、やたらファンシーでポップなフォント(vl-gothic-regular)にされてんじゃねーか!?
サーバーに游明朝が入ってなかったから、にしてはフォント無指定やserifのみのときと異なっているのが妙だ。
ちなみにserifのみのときは、こう。
で、この現象に対しての真相は、やはり「サーバーに游明朝が入ってなかったから」が正解。
本来font-familyは、先頭から見て所持していないフォントはスキップする仕様になっているが、
「wkhtmltopdf」では問答無用で先頭のフォントを適用させてしまうようだ。
このとき、先頭のフォントは存在しない場合、サーバー側の何某かの設定により、想定外のフォントが指定されてしまう、と。
その辺を見る権限がないので最後のところがハッキリせず、今ひとつ、もやもやする感じが残るが…。
今回はfont-family:"MS P明朝";とかいう一周回ってむしろ前衛的なfont-familyを指定することで解決。
追記
開発サーバだとfont-family:"MS明朝";で明朝が指定できたが、本番サーバだとMS明朝がインストールされているはずなのに指定できない、という事例に遭遇。
この場合は表記方法を変更する必要があり、font-family:"MS Mincho";とすることで解決。
開発側ではMS Minchoでは指定できなかったので、始めから横文字にしておけば良いわけではないのが厄介。