Za darmo na e-mailPraktyczny kurs PHP (aż 200 stron!)

Krok po kroku, opanuj podstawy PHP za darmo - praktyczny kurs w formie e-booka prosto na Twój e-mail

Jak zrobić generyczny przycisk Drukuj Stronę

odsłon: 2.99K
0
Komentarzy: 0

Na niektórych stronach jest przycisk drukarki, który otwiera domyślną akcję przeglądarki, by wydrukowała stronę. Nie wiem, czy przy tym zapisuje ją od razu do PDF czy jak tam konkretnie działa, natomiast potrzebuję coś takiego zaimplementować u siebie.

Najzwyklejszy przycisk do wydrukowania obecnie wyświetlanej podstrony.

Da się to zrobić jakoś prosto?

Dzięki!

odpowiedział na pytanie
Dodaj komentarz
0

Hej Krystian,

jeśli chcesz to zrobić najprościej jak to możliwe, możesz zasymulować akcję drukowania wbudowaną w przeglądarkę (tak, jakbyś wcisnął ctrl + P) jednym poleceniem javascript:

<a href="#" onclick="window.print()">Drukuj stronę</a>

Wtedy, w zależności od tego, z jakiej przeglądarki korzystasz, taka akcja zostanie podjęta i pojawi się podgląd wydruku całej strony.

Rozwiązanie Jacka jest bardziej zaawansowane i umożliwia drukowanie fragmentów stron, opakowanych w divy. Zależy, co konkretnie potrzebujesz uzyskać.

odpowiedział na pytanie
Dodaj komentarz
1
Jacek Kołcon (gość) 0 Comments
  1. Proponuję obszar drukowania zamieścić w jakimś DIV o zainicjowanym id.
  2. Dodać na stronie klawisz z akcją onclick=drukujDiv(id)
  3. Użyć np takiej jak poniższa funkcji mojego autorstwa. Należy ją dać w pliku js dołączonym do strony (lepszy pomysł) albo wstawić w bloku js. Co kto woli.
  4. Proszę sobie tą funkcję zmienić w zależności od swoich potrzeb. Np można dołączyć swoje style a nie używać zdeklarowanych. Moja funkcja buduje swoje style.

// Drukowanie DIV =========================================
function drukujDiv(id) {
w = window.open();
w.document.write('<!DOCTYPE html>');
w.document.write('<html lang="pl">');
w.document.write('<head>');
w.document.write('<meta http-equiv="expires" content="3600"/>');
w.document.write('<meta charset="utf-8">');
w.document.write('<meta http-equiv="X-UA-Compatible" content="IE=edge">');
w.document.write('<meta name="viewport" content="width=device-width, initial-scale=1">');
 w.document.write('<style type="text/css">');
w.document.write('html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}');
w.document.write('html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}');
w.document.write('html,body{font-family:Verdana,sans-serif;font-size:15px;line-height:1.5}html{overflow-x:hidden}');
w.document.write('</style>');
 w.document.write('<style type="text/css" media="print">');
w.document.write('@page {size: auto; margin: 0mm;}');
counter(pages);}');
w.document.write('</style>');
 w.document.write('</head>');
w.document.write('<body>');
 w.document.write(document.getElementById(id).innerHTML);
 w.document.write('</body>');
w.document.write('</html>');
 w.print();
w.close();
}

Zmienił status na: opublikowane
Dodaj komentarz
Wpisz swoją odpowiedź.
Ominiesz taką okazję?Praktyczny Kurs PHP (aż 200 stron!) za darmo

Gorąco polecam, naprawdę warto skorzystać! To nic nie kosztuje. Krok po kroku, opanuj podstawy PHP za darmo - praktyczny kurs w formie e-booka prosto na Twój e-mail.