Добрый день!

Давно задавал тотже вопрос. Но с выходом FF3 задаю заново.

Есть ли аналог filter:progid:DXImageTransform.Microsoft.BasicImage(Rotation=1);  в FF?

Как обеспечить принудительную ориентацию страниц при печати в FF?

..заранее спасибо.

Есть ли аналог filter:progid:DXImageTransform.Microsoft.BasicImage(Rotation=1);  в FF?

Описывали бы хоть, что это чудо от IE делает... =/

Я так понимаю, что нужно поиграться с canvas + .drawImage() и .rotate():
http://black-zorro.com/mediawiki/%D0%9F … canvas_-_2

Что делает ясно из темы - принудительно меняет ориентацию листа при печати.

Вот очень популярный пример для IE:

Выделить код

Код:

<script type="text/javascript">
var shell = new ActiveXObject("WScript.Shell");

function SetPrintProperties() {
  try {
    shell.SendKeys(\'%fu\');
    window.setTimeout("javascript:shell.sendKeys(\'%a{ENTER}\');", 1000);
    window.setTimeout("javascript:shell.SendKeys(\'%fv\');", 1000);
  } catch (e) {
    alert ("An exception occured: " + e + "\nCode is: " + e.number + "\nDescription is: " + e.description);
    document.location.href="printhelp.htm";
  }
}
</script>


<html> 
  <head> 
   <title>Print in Landscape</title> 
    
  <style type="text/css"> 
  div.breakafter {page-break-after:always; 
   color: silver} 
  div.breakbefore {page-break-before:always; 
   color: silver} 
  </style> 
   
  <style type="text/css" media="print"> 
  div.page  {  
    writing-mode: tb-rl; 
    height: 80%; 
    margin: 10% 0%; 
  } 
   
  div.page table { 
    margin-right: 80pt; 
    filter: progid:DXImageTransform.Microsoft.BasicImage(Rotation=1); 
  } 
  </style> 
   
  <meta http-equiv="Keywords" 
        content="CSS print landscape; print landscape; printing in landscape; landscape printing; Web page print orientation; landscape orientation; HTML page in landscape; print; writing-mode; print stylesheet; style sheets; CSS tips;" /> 
  </head> 
   
  <body> 
   
  <h2>Force Specific Content to Print in Landscape Orientation</h2> 
  <p>This handy trick works in IE5.5/Win and newer. It assumes that the default printer orientation is portrait.</p> 
   
  <p>Use the <code>writing-mode</code> property (submitted to W3C). A value meant for East Asian typography, <code>tb-rl</code>, causes IE to write text from top to bottom and right to left. Surround the content you want in landscape with a DIV with a class defined in a print stylesheet. For instance: 
  </p>  
   
  <pre><style type="text/css" media="print"> 
  div.page {  
    writing-mode: tb-rl; 
    height: 80%; 
    margin: 10% 0%; 
  } 
  </style></pre> 
   
  <p>Note that now CSS properties have a reverse sense. Height means width and top/bottom margins become left/right margins. </p> 
  <p>Put a page break *after* a portrait page that is to be followed by a landscape and a page break *before* a portrait page that is preceded by a landscape. Tweak to your needs. <b>Caveat:</b> Data tables resist this hack. To get a table to flip nicely for print it is necessary to add another style ruleтАФwhich works only in IE6+. Please see the source for details. When once we practice to deceive, my, how the hacks unweave! 
  </p> 
   
  <div class="breakafter">Page break after here.</div> 
   
  <div class="page"> 
  <h3>Second Page Should Be Printed in Landscape</h3> 
  <p>Un peu de texte en exemple ici.</p>  
   
  <p>Un peu de texte en exemple ici.</p> 
   
  </div> 
   
   
   
  <div class="page"> 
  <h3>Third Page Should Be in Landscape</h3> 
  <p>Un peu de texte en exemple ici.</p>  
   
  <p>Un peu de texte en exemple ici.</p> 
   
  <!-- Use IE Conditional Comments to hide table from IE5.x --> 
  <!--[if gte IE 6]> 
    <table border="1" cellspacing="2" cellpadding="2" bordercolor="Purple"> 
  <tr> 
      <td>First Cell in first row</td> 
      <td>Second Cell</td> 
      <td>Third Cell in first row</td> 
  </tr> 
  <tr> 
      <td>First Cell in row 2</td> 
      <td>Second Cell</td> 
      <td>Third Cell in row 2</td> 
  </tr> 
  </table> 
   
  <![endif]--> 
   
  </div> 
   
   
  <div class="breakbefore">Page break before here.</div> 
   
  <h3>...and the last page should be back to portrait</h3> 
   
  <p>Un peu de texte en exemple ici.</p>  
   
  </body> 
  </html>

Добавлено Mon Sep  1 19:26:09 2008 :
Если проверить данный код в IE - то первая страница будет в книжном варианте, вторая - в альбомном.

...Очень прошу помочь в данном вопросе....:cry:

PSB
Может http://snippets.dzone.com/posts/show/5514 поможет?

Unghost пишет

PSB
Может http://snippets.dzone.com/posts/show/5514 поможет?

Спасибо за наводку, но к сожалению я это уже проверял. Данный метод основан на работе с изображениями canvas. А мой вопрос посвящен именно ориентации всего контента. Я думал, что данным вопросом уже задавались многие, с учетом того, что в любом мало-мальском проекте речь доходила до печатных форм или графиков. Если насчет графиков проблема решались путем инструментов GDLib2, то отчеты создавали проблемы.

Проверил, в Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b1pre) Gecko/20080914034157 Minefield/3.1b1pre работает (в 3.0.x – нет):
http://developer.mozilla.org/web-tech/2 … ransforms/
Например,
html { -moz-transform: rotate(90deg); }