Loading ...
Sorry, an error occurred while loading the content.

Printing a large PDF document that is added by EMBED tag

Expand Messages
  • jkamaraj
    I am displaying and printing a PDF file that is generated by my Application server. The print dialogs comes up correctly for the small PDF for the larger PDFs
    Message 1 of 1 , Mar 2, 2006
    • 0 Attachment
      I am displaying and printing a PDF file that is generated by my
      Application server. The print dialogs comes up
      correctly for the small PDF for the larger PDFs ,the print dialog for
      the Acrobat reader does not comes up. I believe this is because print
      method is called before the complete loading of the PDF document.

      <html>
      <Head>
      <script>
      function printNow()
      var x = document.getElementById("PDF");
      x.click();
      x.setActive();
      x.focus();
      x.print();
      </script>
      </head>
      <body leftmargin=0 topmargin=0 rightmargin=0 bottommargin=0
      onLoad="setTimeout('printNow();', 1000)" >
      <script language="javascript" >
      var myString ="<%=request.getContextPath()%>" +
      window.location.search.substring(1);
      document.write('<EMBED name="PDF" SRC="' + myString + '"
      WIDTH=100%
      HEIGHT=100% fullscreen="yes">');
      </script>
      </body>
      </html>


      Here if I increase the setTimeOut period for the larger report then
      the


      print dialogs shows up. However, I do not know the size of the PDFs
      so
      I cannot decide the time at design time. Is there a way to findout
      the
      loading of the PDF document is complete.


      So far , i have tried the following
      1. Instead of onLoad, I tried calling the printNow() function in the
      body after the EMBED. That does not help
      2. Tried using the windows.document.pdf.ReadyStatus. It returns
      complete even before complete document is loaded.


      Any help is very much appreciated.


      Thanks.
      Raj
    Your message has been successfully submitted and would be delivered to recipients shortly.