溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用ScriptX控件進行Web橫向打印

發布時間:2020-08-03 14:08:07 來源:網絡 閱讀:2042 作者:yuanzhitang 欄目:web開發

一個需求需要采用橫向打印,目前采用IE自身的打印功能(WebBrowser.ExecWB控件)很難進行橫向設置,默認需要調用document.all.WebBrowser.ExecWB(8,1);打開打印設置對話框進行人工設置,頗為不方便,本次采用ActiveX控件,也即第三方的ScriptX控件進行橫向設置。


ScriptX基本功能免費,但高級功能是收費的,下面我就把最近在項目中使用ScriptX的經驗總結一下。


1. 首先把ScriptX.cab放在一個目錄下面,比如根目錄

2. 目前html5 doc需要把object放在head之外

引入如下


...

</head>

<object id="factory" viewastext classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
        codebase="ScriptX.cab#Version=5,60,0,360"></object>

<body>

...


3. 設置打印屬性


function InitPrinterSetting() {
            factory.printing.header = "";//頁眉   
            factory.printing.footer = "";//頁腳    
            factory.printing.leftMargin = 1.0;//左邊距    
            factory.printing.topMargin = 1.3;//上邊距    
            factory.printing.rightMargin = 1.0;//右邊距    
            factory.printing.bottomMargin = 1.3;//下邊距   

            factory.printing.portrait = false;//打印方向,true:縱向.false:橫向    
        }


4.  如下style用于去除打印

 <style   media="print">      
      .Noprint{display:none;} <!--用本樣式在打印時隱藏非打印項目-->      
      .PageNext{page-break-after:   always;} <!--控制分頁-->      
    </style> 


完整代碼如下(附件可下載):


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PrintPreviewAndUnion.aspx.cs" Inherits="TMIS.WebApp.CustomerMA.PrintPreviewAndUnion" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
            <script type="text/javascript" src="../Scripts/lib/jquery-1.4.2.min.js"></script>
            <script type="text/javascript" src="../Scripts/lib/jquery-ui-1.8.5.custom.min.js"></script>
            <script type="text/javascript" src="../Scripts/lib/jquery.formatCurrency-1.4.0.min.js"></script>
            <script type="text/javascript" src="../Scripts/lib/jquery.utils.js"></script>
            <script type="text/javascript" src="../Scripts/lib/jquery.numeric.pack.js"></script>
            <script type="text/javascript" src="../Scripts/lib/jquery.timepickr.min.js"></script>
    <title>WebPrint</title>

    <script type="text/javascript">
 
        function PrintPage() {  
            factory.DoPrint(false);//設置為false,直接打印   
        }

        function InitPrinterSetting() {
            factory.printing.header = "";//頁眉   
            factory.printing.footer = "";//頁腳   
            factory.printing.leftMargin = 1.0;//左邊距   
            factory.printing.topMargin = 1.3;//上邊距   
            factory.printing.rightMargin = 1.0;//右邊距   
            factory.printing.bottomMargin = 1.3;//下邊距   

            factory.printing.portrait = false;//打印方向,true:縱向.false:橫向      
        }

    
        $(document).ready(function () {
            InitPrinterSetting();
        })

    </script>
 <style   media="print">      
      .Noprint{display:none;} <!--用本樣式在打印時隱藏非打印項目-->      
      .PageNext{page-break-after:   always;} <!--控制分頁-->      
    </style>  

</head>

  
    <object id="factory" viewastext classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
        codebase="ScriptX.cab#Version=5,60,0,360"></object>

    <OBJECT   id="WebBrowser"   height="0"   width="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"   VIEWASTEXT></OBJECT>
<body>
    <form id="form1" runat="server">
    <div>
        <center>
          
           <div class="div_content" >
           
               <div style='text-align:center; padding-top:15px; padding-bottom:15px;' class='Noprint' >
                     <input  id="btnPrint" type="button"  value="直接打印"  />
                        &nbsp;&nbsp;&nbsp;&nbsp; 
                    <input  id='btnYes' value='打印預覽' type='button' onclick='document.all.WebBrowser.ExecWB(7,1);' style='width: 90px;height:31px;' />
                </div>
                <div id="print_div_receipt" >
                    <div >
                        <div >
                        <div ></div>
                            <span ><b>打印內容</b></span>   
                        </div>
                     </div>                
                </div>
           
        </div>
        </center>
    </div>
    </form>
</body>
</html>


附件:http://down.51cto.com/data/2368505
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女