ODSで出力されたHTMLファイルが文字化けする
[OS]ALL
[リリース] 8.1
[キーワード] BASE, 8.1, ODS, TEMPLATE, STYLES.NOFONTDEFAULT, FONT, FACE
[質問]
ODSで作成されたHTMLファイルの日本語部分が、正しく表示されません。
[回答]この現象は、HTMLファイルでFONTタグのFACE属性に"sans-serif"と指定されているために発生するものです。 残念ながらこのフォントは、デフォルトのStyles.Defaultスタイルテンプレートで指定されています。 他の環境では、このフォントフェイスの指定が無視されますが、Windows 98(ME)とInternet Explorer 5.5の組み合わせにおいて、 文字化けが発生することが分かっています。 回避方法として、フォントフェイスを指定しないスタイルテンプレートを作成していただき、そちらを使用してください。
下記の例は、ODS HTMLで使用されるスタイルテンプレートを編集します。
/* スタイルテンプレート Styles.Defaultを編集します */ proc template; edit Styles.Default; style fonts "Font face not specified" / 'docFont' = (,3) 'headingFont' = (,4,Bold) 'headingEmphasisFont' = (,4,Bold Italic) 'FixedFont' = (,2) 'BatchFixedFont' = (,2) 'FixedHeadingFont' = (,2) 'FixedStrongFont' = (,2,Bold) 'FixedEmphasisFont' = (,2,Italic) 'EmphasisFont' = (,3,Italic) 'StrongFont' = (,4,Bold) 'TitleFont' = (,5,Bold Italic) 'TitleFont2' = (,4,Bold Italic); end; run; /* テストします */ ods html file='c:\temp\test.html' ; proc means data=sashelp.class; run; ods html close; |