作者 主題: 請問如何橫印  (閱讀 5417 次)

0 會員 與 1 訪客 正在閱讀本文。

tonyvan123

  • 活潑的大學生
  • ***
  • 文章數: 447
    • 檢視個人資料
請問如何橫印
« 於: 2013-06-11 17:36 »
我加入之後
@page {
  size: landscape;
}
如此討論所言http://stackoverflow.com/questions/138422/landscape-printing-from-html
IE 9不會橫印,Firefox 21不會橫印,Chrome會橫印

tonyvan123

  • 活潑的大學生
  • ***
  • 文章數: 447
    • 檢視個人資料
程式碼
« 回覆 #1 於: 2013-06-11 17:40 »
<?php
function print_header ($i_CBUYN,$i_ADDR) {   
   $I_DATE=date("Y")."年".date("m")."月".date("d")."日";
   $I_TIME=strval(intval(date("H"))).":".strval(intval(date("i"))).":".strval(intval(date("s")));
   
  echo "<tr><td COLSPAN='4'>";
   echo "廠商報修清單 送修總表  (A4橫印) </td><td COLSPAN='3'> 列印日期:".$I_DATE."-".$I_TIME."</td>";
  echo "<tr><td COLSPAN='4'>";
   echo "廠商名稱:".$i_CBUYN."</td><td COLSPAN='3'> 廠商代號:".$_SESSION['SYN_ID']."</td>";
  echo "<tr><td COLSPAN='7'>";
   echo "詳細地址:".$i_ADDR."</td></tr>";
   echo "<tr bgcolor=seagreen>";
   echo "   <td class='top' align='left' width='4%' ROWSPAN='2'>編號</td>";
   echo "   <td class='top' align='left' width='10%'>111111".str_pad('&nbsp; ',6)."</td>";
   echo "   <td class='top' align='left' width='10%'>1111111111 &nbsp; &nbsp; </td>";
   echo "   <td class='top' align='left' width='12%'>11111111".str_pad('&nbsp; ',6)."</td>";
   echo "   <td class='top' align='left' width='16%'>11111111".str_pad('&nbsp; ',12)."</td>";
   echo "   <td class='top' align='left' width='16%'>1111".str_pad('&nbsp; ',16)."</td>";
   echo "   <td class='top' align='left' width='32%'>1111".str_pad('&nbsp; ',46)."</td>";
   echo "</tr>";                                 
   echo "<tr bgcolor=seagreen>";
   echo "   <td class='bottom' align='left' width='100%' colspan='6'>備註".str_pad('&nbsp; ',126)."</td>";
   echo "</tr>";                                 
  return true;
};

?>
<!DOCTYPE html>
<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html; charset=big5">
<link rel=stylesheet type="text/css" href="../style.css">
<TITLE>查詢結果(YaYaMobile Only)</TITLE>
<style>
   body {
      height: 595px;
      width: 1080px;
      /* to centre page on screen*/
      margin-left: auto;
      margin-right: auto;
   }

   @page { size: landscape; }

   @media print {
      .header, .chide {display: none; }
   }
      
   .top {
       border-top:thin solid;
       border-color:black;
   }
   
   .bottom {
      border-bottom:thin solid;
      border-color:black;
   }
   
   .left {
      border-left:thin solid;
      border-color:black;
   }
   
   .right {
      border-right:thin solid;
      border-color:black;
   }
</style>

</head>   

<body vlink="#0000FF"> 
   <div class="header">
      <input type="button" value=" 列印 " onclick="window.print();return false;" />
      <input type="button" value="回叫修單追蹤"  onclick="javascript: location.href='trace_callfix_YaYa_mobile1.php';">   
   </div>
   <div style="font-family:細明體;text-align:left">
      <form method="post">
         <div style="width:1800px"  CLASS="print">
         <? $i=0;                             
            $flag=0;
            $startfrom=0;
            $last = $total_record - $total_record % $page_nums;
            while ($flag == 0) { ?>
               <table border="0" width="1800px">
            <?    
                     $next = ($startfrom + $page_nums) > $total_record ? $last : ($startfrom + $page_nums);
               print_header($i_CBUYN,$i_ADDR);
            ?>
                  <? for($j=4; $j<$page_nums && $obj=mysql_fetch_object($rs); $j++) {
                        $i=$i+1;
                        
                  ?>
                        <tr>
                           <td class='top' align='right valign='top' width='4%' ROWSPAN='2'><? echo($i); ?></td>
                           <td class='top' align='left'  width='10%'> <? echo($obj->aaaa); ?> </td>
                           <td class='top' align='left'  width='10%'> <? echo($obj->bbbb); ?> </td>
                           <td class='top' align='left'  width='12%'> <? echo($obj->cccc); ?> </td>
                           <td class='top' align='left'  width='16%'> <? echo($obj->dddd); ?> </td>
                           <td class='top' align='left'  width='16%'> <? echo($obj->eeee); ?> </td>
                           <td class='top' align='left'  width='32%'> <? echo($obj->ffff); ?> </td>
                        </tr>                                 
                        <tr>           
                           <? if ($j==($page_nums-1) || ($i >= $total_record)) { ?>
                              <td class='bottom' align='left' width='100%' COLSPAN='6'>
                                 <?
                                   if ( $obj->Question=='') echo (str_pad('&nbsp; ',60));
                                    else echo($obj->hhhh);
                                 ?>
                              </td>
                           <? } else { ?>
                              <td align='left' width='100%' COLSPAN='6'>
                                 <?
                                   if ( $obj->Question=='') echo (str_pad('&nbsp; ',60));
                                    else echo($obj->hhhh);
                                 ?>
                              </td>
                           
                           <? }; ?> 
                        </tr>                                 
                        <hr>
                  <? }
                     if ($i >= $total_record) {
                        $flag=1;
                     };
                  ?>
               </table>
            <? } ?>
         </div>

      </form>
      <img src='https://www.mycompany.com.tw/images/YaYaMobileMaintenanceStatement.jpg' alt='YaYaMobileMaintenanceStatement'>
   </div>
</body>
</html>

hirokiht

  • 可愛的小學生
  • *
  • 文章數: 2
    • 檢視個人資料
Re: 請問如何橫印
« 回覆 #2 於: 2013-06-12 14:18 »
CSS2.1 規格裏面沒有size, 橫印只能通過瀏覽器設定, 如果你要強制性橫印, 建議你可以使用自動產生pdf的方式

tonyvan123

  • 活潑的大學生
  • ***
  • 文章數: 447
    • 檢視個人資料
Re: 請問如何橫印
« 回覆 #3 於: 2013-06-13 11:29 »
CSS2.1 規格裏面沒有size, 橫印只能通過瀏覽器設定, 如果你要強制性橫印, 建議你可以使用自動產生pdf的方式
謝謝,我試著用pdf,謝謝啦

PS: 我寫的那一段如用chrome時,chrome會讓印出的A4是橫印的,Chrome會讓列印前先預覽,不過Firefox和IE 9就不行了
« 上次編輯: 2013-06-13 11:32 由 tonyvan123 »

hirokiht

  • 可愛的小學生
  • *
  • 文章數: 2
    • 檢視個人資料
Re: 請問如何橫印
« 回覆 #4 於: 2013-06-13 13:10 »
CSS2.1 規格裏面沒有size, 橫印只能通過瀏覽器設定, 如果你要強制性橫印, 建議你可以使用自動產生pdf的方式
謝謝,我試著用pdf,謝謝啦

PS: 我寫的那一段如用chrome時,chrome會讓印出的A4是橫印的,Chrome會讓列印前先預覽,不過Firefox和IE 9就不行了
size在原本的CSS2規格內有提出, 不過在修訂了的CSS2.1被刪除了, 可能這就是爲什麼一部分的瀏覽器還是有支援這個功能