要約:昨日の続きで、複数のボックスサイズとフォントでテスト。Chromium43は、ボックス横幅が用紙幅に近ければフィットさせる。ボックス横幅が用紙幅よりかなり小さい場合も微妙に拡大。Firefoxは常にきっちり96DPI(PPI)でブレない。フォント埋め込み関連は明日書きます。
Contents

実行環境、テスト用Webコンテンツ
• Windows7 32bit + Chromium Portable 43, Firefox Portable 39昨日と同じ)
• PDF出力 …Acrobat X Proと、ChromiumビルトインのSave as PDF機能。
• Webコンテンツ … 下記3つのHTMLをローカルに置いてブラウザで開く。

ファイル名ボックス横幅フォント(文字サイズ : 36px)
width4inch_meiryo.html96px * 4メイリオ
width8inch_ricty.html96px * 8Ricty Diminished Discord(ショートカットでインストール)
width10inch_noto.html96px * 10Noto Sans Japanes (Web Font) »Google Fonts

HTMLのボックス横幅と文字以外は
昨日と同じ。きっちり96PPIで印刷(PDF出力)されれば、ボックス横幅がそれぞれ4インチ(101.6mm)、8インチ(203.2mm)、10インチ(254mm)になり、文字は27ポイント(DTP用サイズで。36px÷96px/inch×72pt/inch)になる想定。HTMLのソースを下記に、フレーム内スクロールで表示しておきます。
width4inch_meiryo.htmlSelectRawtextBitbucket
<!DOCTYPE html><html><head><meta charset="UTF-8">
<style>
body {
  font-family: Meiryo;
  margin: 0;
}
div {
  background: #ABCDEF;
  color: white;
  font-size: 36px;
  height: calc(96px * 4 - 10px * 2);
  line-height: 1.75;
  overflow: hidden;
  padding: 10px 20px;
  width: calc(96px * 4 - 20px * 2);
}
</style>
</head>
<body>
<div>
  height: 4インチ(96ピクセル * 4)<br>
  width: 4インチ(96ピクセル * 4)<br>
  フォント: メイリオ(システム内)
</div>
</body>
</html>
width8inch_ricty.htmlSelectRawtextBitbucket
<!DOCTYPE html><html><head><meta charset="UTF-8">
<style>
body {
  font-family: 'Ricty Diminished Discord'; /* Chromiumでは無効 */
  margin: 0;
}
div {
  background: #ABCDEF;
  color: white;
  font-size: 36px;
  height: calc(96px * 4 - 10px * 2);
  line-height: 1.75;
  overflow: hidden;
  padding: 10px 20px;
  width: calc(96px * 8 - 20px * 2);
}
</style>
</head>
<body>
<div>
  height: 4インチ(96ピクセル * 4)<br>
  width: 8インチ(96ピクセル * 8)<br>
  フォント: Ricty Diminished Discord(ショートカットでインストール、Chromiumでは無効)
</div>
</body>
</html>
width10inch_noto.htmlSelectRawtextBitbucket
<!DOCTYPE html><html><head><meta charset="UTF-8">
<style>
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
body {
  font-family: 'Noto Sans Japanese';
  margin: 0;
}
div {
  background: #ABCDEF;
  color: white;
  font-size: 36px;
  height: calc(96px * 4 - 10px * 2);
  line-height: 1.75;
  overflow: hidden;
  padding: 10px 20px;
  width: calc(96px * 10 - 20px * 2);
}
</style>
</head>
<body>
<div>
  height: 4インチ(96ピクセル * 4)<br>
  width: 10インチ(96ピクセル * 10)<br>
  ウェブフォント: Noto Sans Japanese (Google Fonts)
</div>
</body>
</html>


ブラウザ上の表示、出力設定
下が、3つのHTMLごとにChromiumFirefoxの表示を並べたところ(右/上がChromium)。各種の寸法は両ブラウザとも同じで、違う点は、フォントにRicty Diminished Discord(ショートカットとしてインストールしたもの)を使った真ん中。Chromiumでは、そういうインストール方法のフォントは認識されない、またはパスか何かの問題でショートカット先を辿れないのかも。

出力時の用紙設定は
昨日と同じで「A4縦、マージンなし」。設定の様子など詳細は昨日書きました。ボックス横幅が10インチのHTMLは、ボックスが用紙横幅より大きい。そういう、Webコンテンツが用紙をはみ出す時のPDF出力結果の検証も兼ねています。


結果
昨日Chromium+AcrobatPDF出力できなかったけど(Chromiumが強制終了した)今日はでき、結果的に3種類のPDF出力、すなわち①Chromium単独、②Chromium+Acrobat、③Firefox+Acrobatが得られました。PDFを昨日と同様にIllustrator CS5で読み込み、ボックスと文字サイズを計測。


■ 出力されたPDFへのリンク
元HTML①Chromium単独②Chromium+Acrobat③Firefox+Acrobat
width4inch_meiryo.html
width8inch_ricty.html
width10inch_noto.html0

■ ボックス横幅
元HTML元サイズPDF①PDF②PDF③
width4inch_meiryo.html96px * 4108.482 mm108.67 mm101.6 mm
width8inch_ricty.html96px * 8209.892 mm209.719 mm203.2 mm
width10inch_noto.html96px * 10209.906 mm209.719 mm209.889 mm

■ ボックス縦長
元HTML元サイズPDF①PDF②PDF③
width4inch_meiryo.html96px * 4108.482 mm108.839 mm101.6 mm
width8inch_ricty.html96px * 4104.946 mm105.283 mm101.6 mm
width10inch_noto.html96px * 483.962 mm84.328 mm101.6 mm

■ ボックス縦長の、元サイズに対する比率(96
DPIとして)
※これをWebコンテンツ全体に対する拡大縮小率と見なせる
元HTMLPDF①PDF②PDF③
width4inch_meiryo.html1.06771.071251
width8inch_ricty.html1.03291.036251
width10inch_noto.html0.82630.831

■ 文字サイズ (NA :アウトライン化されたので計測せず)
元HTML元サイズPDF①PDF②PDF③
width4inch_meiryo.html36px28.83 ptNA27pt
width8inch_ricty.html36px27.89 ptNA27pt
width10inch_noto.html36pxNANANA

Firefoxは常にきっちり96DPI
とりあえず上の結果から言えそうなこと。
1) Chromiumの二つの出力(①単独、②Acrobat印刷)とも、Webコンテンツ横幅が用紙幅に近い時(8インチ)や超える時(10インチ)は用紙幅にフィットさせると分かった。Webコンテンツ横幅が用紙幅よりかなり小さい時(4インチ)も原寸ではなく微妙に拡大されて、その率は謎。Firefox+Acrobat③は、Webコンテンツの大きさに関係なく常に96DPIで出力し、安定してる。

2) Chromiumの拡大縮小率は、単独でのPDF化①と、Acrobat併用②とで微妙に違う。後者の方が数値を切りよく丸めてるような印象。

3) 文字サイズは、96
DPIDTPでのポイントサイズで計算すればHTML36px÷96px/inch×72pt/inch = 27ポイントになるはずが、ChromiumWebコンテンツの拡大縮小に比例して変化し、Firefoxはきっちり27ポイント。ただし三番目のHTML(Webフォント使用)はPDF出力の時点でアウトライン化されたので、正確なサイズは未検証。

というわけで、
昨日の時点では「Chromiumによる挙動や拡大率を把握することで、単独でPDF出力できるメリットを活かせる」と思っていたけど、どうも謎が多いので難しい。当面、仕上りサイズをきちんと想定してWebコンテンツをPDF出力する際は、Firefox一択になりそう。

なおFirefox+Acrobat③でWebコンテンツが用紙幅を超えた場合(10インチ)、ボックスは用紙内にクリップされる一方、文字は用紙外の部分も残った。これはAcrobatの設定によるかもしれないけど。


実行環境で書いたとおり、今日試した3つのHTMLはフォントの種類がそれぞれ違う(システム内のメイリオ、ショートカットでインストールしたRicty、WebフォントのNoto)。今日も少し書きましたが、このフォント種類によるPDF出力時の文字情報の違いについて、明日まとめます。