没试过,这样给你说吧,在两个帧中,一个里面是普通网页,里面有javascript角本
..
theSecondFrame.print();
..theSecondFrame是第二个帧的名字
只提供一个思路,命令可能不太准确,也不知可行不可行,你自己试

解决方案 »

  1.   

    在www.javazoom.net上下载download4j包,用这个包的方法下载如果客户端有Adobe Reader就是用Adobe Reader打开pdf文档,就可以打应了。
      

  2.   

    多谢各位!查了很多资料,中文和英文的,总结一下,希望对他人有帮助。
    我是从以下几个思路去找解决的方法:
    1.用框架集合javascript的print()方法。
    其实就是想利用浏览器中调用客户端脚本进行打印,事实证明这是不行的,这个方法只能打印网页,而PDF其实是ACROBAT READER嵌套在IE中打开的,所以print()方法无效。
    2.利用ActiveX来进行打印。
    找了一通,发现确实ADOBE出过一个pdf.ocx,但是找不到没有任何公开的技术资料,看来这个只是供他们自己的程序嵌套在IE中使用。
    3.在itext的在线帮助中找到的一个解决方法,摘录如下:
    /*  Form http://www.lowagie.com/iText/faq.html#printing   */How can I send a PDF file to a printer directly?Printing is a very platform dependent functionality. On Windows, you can print a PDF file by executing Acrobat Reader:
    String osName = System.getProperty("os.name" );
    //FOR WINDOWS 95 AND 98 USE COMMAND.COM
    if( osName.equals( "Windows 95" ) || osName.equals( "Windows 98" )){
        Runtime.getRuntime().exec("command.com /C start acrord32 /p /h" + claim.pdf);
    }
    //FOR WINDOWS NT/XP/2000 USE CMD.EXE
    else {
        Runtime.getRuntime().exec("cmd.exe /C acrord32 /p /h" + claim.pdf);
    }(Code provided by Jasperlan Guela)
    Re: the /h-option suppresses the Acrobat Reader Dialog Box. /*  Form http://www.lowagie.com/iText/faq.html#printing   */
    刚找到这段代码的时候欣喜若狂,以为找到正解。但后来在IE6中测试,发现只能自己调自己(也就是只能在服务器上打印)资源进行打印,而浏览器客户端会报一个访问资源权限的错,还是不行。最终客户没有坚持这个需求,还是采用了提供链接,下载后让客户自行打印。
    呵呵,不好意思,最终没能提供正解,但如果有后来者,前述的方法可以不必再用,而直接用从以下两个思路来解决:一是用jsp结合客户端applet,这个也可以找找已有的一些开源项目;一是自己写ActiveX来解决。