呼叫 DoPrint() 執行列印
透過 WScript.Shell 修改頁面設置的登錄值

  1. function DoPrint()   
  2. {  
  3.     try      
  4.     {  
  5.         // 設定頁首頁尾及邊界  
  6.         var ret = saveAndClearSetting();  
  7.               
  8.         // 列印  
  9.         window.print();  
  10.     }   
  11.     catch (e)   
  12.     {   
  13.         alert("err="+e.description);   
  14.     }  
  15. }  
  16. var hkey_path = "HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"; 
  17. var hkey_key_header = hkey_path + "header"; // 頁首 
  18. var hkey_key_footer = hkey_path + "footer"; // 頁尾 
  19. var hkey_key_margin_bottom = hkey_path + "margin_bottom";   // 邊界(下) 
  20. var hkey_key_margin_left = hkey_path + "margin_left";       // 邊界(左) 
  21. var hkey_key_margin_right = hkey_path + "margin_right";     // 邊界(右) 
  22. var hkey_key_margin_top = hkey_path + "margin_top";         // 邊界(上) 
  23. var topMargin = 5; //***注意: IE預設的單位為公厘(mm) 
  24. var leftMargin = 5; 
  25. var rightMargin = 5;  
  26. var bottomMargin = 5;  
  27.  
  28. // 設定頁首頁尾及邊界 
  29. function saveAndClearSetting()  
  30. { 
  31.     try  
  32.     { 
  33.         var RegWsh = new ActiveXObject("WScript.Shell"); 
  34.         RegWsh.RegWrite(hkey_key_header, "");   //頁首頁尾設為空白 
  35.         RegWsh.RegWrite(hkey_key_footer, ""); 
  36.         RegWsh.RegWrite(hkey_key_margin_bottom, parseFloat(bottomMargin)/10/2.54); //***注意: 登錄值的單位為公吋 
  37.         RegWsh.RegWrite(hkey_key_margin_right, parseFloat(rightMargin)/10/2.54); 
  38.         RegWsh.RegWrite(hkey_key_margin_left, parseFloat(leftMargin)/10/2.54); 
  39.         RegWsh.RegWrite(hkey_key_margin_top, parseFloat(topMargin)/10/2.54); 
  40.         return true; 
  41.     }  
  42.     catch (e)  
  43.     {  
  44.         if ( e.description.indexOf("伺服程式無法產生物件") != -1 )  
  45.             alert("請調整IE瀏覽器的安全性\n網際網路選項\安全性\自訂層級\n「起始不標示為安全的ActiveX控制項」設定為啟用或提示。");  
  46.         else  
  47.             alert("ERR="+e.description);   
  48.     }   
  49.     return false;  

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 avrilnote 的頭像
    avrilnote

    Avril Note

    avrilnote 發表在 痞客邦 留言(0) 人氣()