Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Печать страницы вместе с графикой


Автор: SergV 20.3.2010, 12:04
Привет!

Помогите разобраться со скриптом, и изменить его так, чтобы на печать выводился не только текст, а также графика(фон). Я в яваскриптах не спец.

Имеется следующий код:
Код

<script>
function Print(){
text = document.getElementById('content').innerHTML;
printwin = open('', 'printwin', 'width=720,height=900');
printwin.document.open();
printwin.document.writeln('<html><head><title></title>');
printwin.document.writeln('<link rel="stylesheet" href="style.css" type="text/css" media="print" />');
printwin.document.writeln('</head><body onload=print();close()>');
printwin.document.writeln(text);
printwin.document.writeln('</body></html>');
printwin.document.close();
}
</script>
<br />
<div id="content">
text+background
</div>

Где - media="print" вроде как должен был бы говорить браузеру, что это печать. Но что с ним, что без него, на печать выводится только текст без фона.
В моём случае нужен фон обязательно..

Проверял только в Firefox, возможно в других браузерах и работает, но мне надо чтобы во всех работало.

Помогите плиз разобраться, что нужно добавить или изменить в коде, чтобы печаталось с графикой.
Я пытался найти ответ в поисковике, но что то всё не то находил.

Автор: EmilRegis 22.3.2010, 09:29
в css задать 
Код

@media print { /* Стиль для печати */
    .yourclass{
       background-image: url('img.png');
    }
 }


попробуйте,может получится)

Автор: SergV 22.3.2010, 18:13
EmilRegis, я с ксс работаю не первый день, но о таком способе слышу первый раз, и как и предположил сразу, способ не работает, а точнее сказать, он вообще убивает стиль.

Автор: EmilRegis 23.3.2010, 07:07
мне самому ни разу не приходилось выводить красоту на печать, но 
http://htmlbook.ru/css/@media.html
пишет,что это так и делается

Автор: skinny 25.3.2010, 13:17
Код


<a href="javascript:
   var wwidth=screen.width-300;var hheight=screen.height-250;var lleft=(screen.width-wwidth)/2;
   var printwin=window.open('./uploaded/imgs/img029.jpg', 'popup_print',  
   'width='+wwidth+',height='+hheight+', left='+lleft+', top=25, scrollbars=no, menubar=yes');
   printwin.window.print();">
      <img src="./templates/_default/print-icon.gif" alt="печать" border="0">
</a>




при нажатии на ссылку должно открыться popup окно, и сразу должен появиться диалог печати документа.
Проблема вот в чём, в IE всё гут, а вот в мазиле на печать выводиться чистый лист, хотя если диалог отправки на печать закрыть и нажать просто файл - печать то всё нормально, на печать выводиться как положено.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)