IE8の印刷機能や如何に?

Internet Explorer 8のベータがリリースされたのでとりあえず覗いてみた。


といっても、未だにIE7さえ入れてない環境なのでIE8もちゃんと入れる気は端からない。
DLLだけ抜き出して印刷機能の変更点を探ってみる。


IE7と同じく、印刷プレビューに関するスクリプト(印刷テンプレート)は ieframe.dll と ieframe.mui にリソースとして入っている。

ieframe.dll PREVIEW.JS 印刷テンプレートのスクリプトコード
ieframe.mui PREVIEW.DLG 印刷テンプレートのベースHTML(プレビューダイアログの定義)


スクリプトの変更点


・dialogArgumentsのプロパティとして __IE_STFScaleMin が追加されている。どうやら、自動フィット(縮小して全体を印刷する)の場合の、最小スケール(%)を指定するプロパティらしい。


・TemplatePrinterのプロパティとして headerFooterfont が追加されている。どうやら、ヘッダ、フッタのフォントを指定するプロパティのようだ。TemplatePrinterはshdocvw.dllから渡されてくるので、IE6やIE7からIE8の印刷テンプレートを使うと、Printer.headerFooterfontは定義されない(undefined)。これは HeadFoot.font に代入されて使われる。


・HeaderFooterのプロパティとして、font が追加されている。


・フレーム印刷エラー(The document in this frame cannot be printed as laid out.)のHTMLの格納場所変更。res://SHDOCVW.DLL/printnof.htm から res://IEFRAME.DLL/printnof.htm へ移動。


・縮小表示時の表示位置変更(スケールを考慮)


プレビューダイアログそのものには特に変更はない模様。


結論としては、印刷機能に関してはIE6からIE7の時のような大幅な機能強化はなし。ごく僅かな変更(不具合修正?)が行われているのみ。
printtemplates.exeを使ってIE6での表示も問題ないことを確認。
IE6+IE8の印刷プレビュー