3

object タグに SVG ファイルが埋め込まれた HTML があります。

このファイルは、ファイル プロトコルを介して共有リモート ロケーションからアクセスされ、IE (IE9 または最新) でアクセスされます。

キー「P」が押されたときにトリガーするように変更を加えました。また、印刷ダイアログを表示するwindow.print()こともできます。ctrl + P

上記のシナリオ (IE9 でリモート アクセスされたファイル) の両方のケースで、印刷の品質が大幅に異なることがわかりました。

PDFに印刷して確認できます。

window.print()2つの違いと、私たちが行うときと同じように機能させるために何をすべきかを誰かが説明できますctrl + Pか?

    <!-- DOCTYPE HTML -->
<HTML>
<HEAD><TITLE>Print</TITLE>
<META content="text/html; charset=UTF-8" http-equiv=Content-Type>
<SCRIPT type=text/javascript src="jquery.js"></SCRIPT>
<SCRIPT type=text/javascript>
        function printProcess() {
        jQuery(document).bind("keyup", function(e){    
                if(e.keyCode == 80){
                    p();
                }
            });
        }       
        function p(){
        window.print();
        }
    </SCRIPT>
</HEAD>
<BODY style="WIDTH: 100%;HEIGHT: 100%" onload="printProcess();" >
    <DIV style="HEIGHT: 100%" id="printableDiv" >
        <OBJECT data="test.svg" width="100%" type="image/svg+xml" height="100%">
        </OBJECT>
    </DIV>
</BODY>
</HTML>
4

2 に答える 2

1

次の関数を使用します。

function print_me(idx)
{
    var browser = navigator.userAgent;
    if(browser.indexOf('MSIE')>=0){
    document.execCommand('print', false, null);
    }
    else{
    window.print();
    }

}//end func...

基本的に、MSIE では少し異なる方法で print メソッドを呼び出す必要があります...

于 2013-12-20T11:11:43.337 に答える