Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14

Hybrid View

  1. #1
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    per il contesto dipende da chi o perché si stampa.

    ad esempio:
    durante il mio ufficio è normale che ne stampi due, ma potrei comunque aver necessità di stamparne una sola. forse da browser non si riesce a discriminare, ma darai comunque l'opzione: forse con un altro tasto "stampa una copia". in un mio gestionale già lo integrerei, lo trovo molto pratico.

  2. #2
    Per il tuo gestionale

    codice:
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Page title</title>
    <style type="text/css" media="screen">
    #copy {
     display: none
    }
    </style>
    <style type="text/css" media="print">
    #copy {
     display: block;
     page-break-before: always;
    }
    #print_button {
     display: none
    }
    </style>
    <script type="text/javascript">
    function two_copies(){
     //creo la copia
     document.body.innerHTML+='<div id="copy">'+document.body.innerHTML+'</div>';
     //stampo
     window.print();
     //rimuovo la copia
     var copy=document.getElementById('copy');
     copy.parentNode.removeChild(copy);
    }
    </script>
    </head>
    <body>
    <h1>Lorem ipsum</h1>
    <button type="button" onClick="two_copies()" id="print_button">Stampa due copie</button>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    </body>
    </html>

    Alternativa: lasciar decidere all'utente il numero di copie (tramite input[type=text]) con "due" come valore predefinito:

    codice:
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Page title</title>
    <style type="text/css" media="screen">
    .copy {
     display: none
    }
    </style>
    <style type="text/css" media="print">
    .copy {
     display: block;
     page-break-before: always;
    }
    .hide_on_print {
     display: none
    }
    </style>
    <script type="text/javascript">
    function custom_print(){
     //creo n copie
     var copies_number=Number(document.getElementById('copies').value);
     var copy_item=document.body.innerHTML;
     for(var i=1; i<copies_number; i++){
      document.body.innerHTML+='<div class="copy">'+copy_item+'</div>';
     }
     //stampo
     window.print();
     //rimuovo le copie (per stampare solo una copia da Ctrl+P)
     var copies_items=document.getElementsByClassName('copy');
     for(var i=0; i<copies_items.length; i++){
      copies_items[i].parentNode.removeChild(copies_items[i]);
      i--;
     }
    }
    </script>
    </head>
    <body>
    <h1>Lorem ipsum</h1>
    <button type="button" onClick="custom_print()" class="hide_on_print">Stampa</button> <label class="hide_on_print"><input id="copies" value="2" width="2" size="2"> Copie</label>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    <p> Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    </body>
    </html>
    Buona domenica.

  3. #3
    Mi fa piacere vedere che questo post ha suscitato così tanto interesse e che ci siano così tante soluzioni proposte!

    Grazie mille!

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    grazie luca

    aggiungo piccola modifica nella versione con la scelta del numero delle pagine da stampare:
    codice:
    <input id="copies" value="2" style="width:3em;" min="1" type="number">
    Ultima modifica di Vincent.Zeno; 05-03-2017 a 14:14

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.