WebViewerコントロールを使用しPDF形式のレポートをブラウザ全体に表示しています。クライアントのブラウザをIE6からIE7に変更したところ全画面表示されなくなりました。

文書番号 : 27272     文書種別 : 使用方法     最終更新日 : 2009/08/03
文書を印刷する
対象製品
ActiveReports for .NET 6.0J Professional
詳細
製品ヘルプ「よくある質問:WebViewerコントロールをブラウザのサイズに合わせる」を参考に、コーディングを行った場合にこの現象が発生する場合があります。

本現象は、IE6とIE7互換性に依存した動作と考えられます。ViewerTypeプロパティをAcrobatReaderに設定したWebViewerコントロールが配置されている.aspxページを実行すると、クライアントに出力されるページには、<div>や<iframe>タグを使用して、コントロールやPDFデータ(WebViewerが出力するArCacheItem)が埋め込まれます。これらのタグ内に、クライアント環境のAdobe Readerがインライン表示され、ブラウザ上にPDFが表示されるという動作になります。
このとき、コントロールの領域を示す<div>や<iframe>タグの、Style属性に記載されたCSSにより、ブラウザのサイズに合わせてWebViewerのサイズが調整されます。

IE7の仕様に関しては弊社にも詳細な情報がございませんが、CSSを使用したWebページをIE7上で表示したとき、IE6の場合とで結果が異なってしまうケースがあるようです。

Internet Explorer 7.0 に関するカスケード スタイル シートの互換性
http://www.microsoft.com/japan/msdn/ie/expie/ie7_css_compat_reviced.aspx

本現象の回避方法としては、以下のような方法が考えられます。
  1. WebViewerコントロールを使用する場合の方法
    JavaScriptでブラウザ内の表示エリアの高さを取得し、iFrameに設定することでAdobe Readerをブラウザのサイズに合わせることができます。以下のコードをWebViewerが配置されている.aspxファイルの<head>~</head>の中に挿入してください。

    ◆サンプルコード(JavaScript)
    <script type="text/javascript" language="javascript">
     function resizeWebViewer() {
      var frameHeight = 0;

      // ウィンドウの高さを取得します。
      if (self.innerWidth) {
       frameHeight = self.innerHeight;
      } else if (document.documentElement && document.documentElement.clientHeight) {
       frameHeight = document.documentElement.clientHeight;
      } else if (document.body) {
       frameHeight = document.body.clientHeight;
      }

      // iframeタグを持つ要素を抽出します。
      var allIFrames = document.getElementsByTagName("iframe");

      // PDFが表示されるiframeの高さを設定します。
      allIFrames.item(0).style.height = frameHeight + "px";
     }
     // ブラウザのリサイズ毎にresizeWebViewerを呼び出します。
     window.onresize = resizeWebViewer;
    </script>


  2. WebViewerコントロールを使用しない方法
    本現象は、WebViewerコントロール(ViewerType=AcrobatReader)を使用して、コントロールのサイズを調整した場合に発生します。製品ヘルプの以下の内容ではWebViewerを使用せずにPDF形式のレポートを出力しています。

    ActiveReports for .NETユーザーガイド
     - サンプルと基本操作
      - 基本操作
       - Standardの基本操作
        - カスタムエクスポートの操作手順
         - PDFにカスタムエクスポート
キーワード
問題 Web

この文書は、以前は次のFAQ IDで公開されていました : 11949