Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    39

    Gestione stampa con CSS

    Ciao,
    ho questo problema:
    ho un'applicazione che genera report html a video. Le dimensioni/stili degli oggetti che sono presenti vengono gestiti con un css. Ho la necessità di garantire che quando mandati in stampa tali documenti abbiano un layout fisso, ovvero siano impostati i margini di pagina fissi.

    So che si può creare un css ad hoc per la stampa e linkarlo con un @import dalle pagine html. Sapete dirmi come deve essere costruito il css in modo che la pagina html cui fa riferimento abbia i 4 margini a 10mm? Esattamente come si linka agli html?

    grazie

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    ... non ho capito:
    vorresti impostare il layout di stampa sulla macchina dell'utente? :master:

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    39
    ciao,
    voglio che il layout di stampa sia da me impostato con un css.
    So per certo che si possono creare i css per la gestione dei media, tra cui la stampa.
    Ad esempio:

    Nel html:
    <link rel='stylesheet' href='css/MEDprinter.css' media='print' type='text/css'>

    In MEDprinter.css:
    BODY {
    MARGIN: 0px 0px 0px 0px;
    zoom:90%;
    PADDING: 10px 0px 0px 0px; /*top, right, bottom, left */
    }


    Però non conosco bene come impostare i margini di pagina a dei valori fissi. Il "Margin" non sembra funzionare.

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    Non sono esperto nella gestione dei layout per le stampanti,
    ma tu non hai risposto alla mia domanda:

    stai cercando di creare un layout che vada bene alla stampante
    o vuoi "settare" come la stampante (client) deve comportarsi?
    nel secondo caso non credo proprio si possa fare (per fortuna),
    e come utente mi incazzerei parecchio se mi modificassi le impostazioni della macchina.
    Senza parlare della sicurezza!

    Per cercare di dare una risposta alla tua domanda:
    io creo uno stile apposito che rientri nella media della impostazioni delle stampanti:
    diminuendo o modificando grandezze di alcun testi e dei contenitori...
    e talvolta alcune cose le elimino proprio (nascondendole).

    Per cui cercherei di creare una situazioe che la stampante
    riconosca per intero senza perdite.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    39
    In effetti come puoi vedere dal codice che ti ho appeso, ho usato lo zoom per cercare di contenere le tabelle all'interno della pagina di stampa.

    Ho a che fare con report tabellari. Quello che vorrei evitare, se possibile, è fare in modo che la stampa di questi esca come la voglio, da qualunque postazione venga lanciata. Dunque, facendo un css con media=print, quando si lancia la stampa, l'html si predispone a seguire le istruzioni dettate dal css: in questo modo setta l'eventuale zoom, i margini...

    Altrimenti qual'è l'utilità del css che gestisce la stampa? Mi pare si possa fare una cosa del genere. Nel web ci sono siti che ti impostano i layout di stampa

  6. #6
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    Originariamente inviato da zeccaman
    Ho a che fare con report tabellari. Quello che vorrei evitare , se possibile, è fare in modo che la stampa di questi esca come la voglio, da qualunque postazione venga lanciata. Dunque, facendo un css con media=print, quando si lancia la stampa, l'html si predispone a seguire le istruzioni dettate dal css: in questo modo setta l'eventuale zoom, i margini...

    Altrimenti qual'è l'utilità del css che gestisce la stampa? Mi pare si possa fare una cosa del genere. Nel web ci sono siti che ti impostano i layout di stampa
    ...a parte quello che ho evidenziato:
    non stiamo andando avanti...

    hai provato a modificare il tuo layout in funziona della stampante?
    ovvero: ridurre le dimensioni di informazioni meno utili,
    portare a capo i dati (float: left; ad esempio)
    e cose del genere?

    comunque si, questo è corretto:
    <link rel='stylesheet' href='css/MEDprinter.css' media='print' type='text/css'>
    ma, appunto, ridefinisci nel foglio di stile come deve essere stampato considerando che la stampa ha dei margini sui quali non puoi influire

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    39
    ok, ora ci siamo. Dunque, anche volendo agire per impostare dei margini di stampa fissi non riuscirei comunque. Questo volevo sapere e effettivamente era la sola cosa che non riuscivo a fare. Potrei però mantenere lo zoom, cosa ne pensi?.

    grazie, caio

  8. #8
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    per quanta riguarda "zoom" non saprei dire: su http://www.w3schools.com non ho trovato documentazione in merito...

    preferirei impostare tutto in percentuale...
    e comunque dando un margine al div contenitore non ho notato problemi.

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    39
    Scusami ma non riesco a venirne a capo. Nel css per la stampa non riesco a far adattare la pagina alla stampa. Voglio che la stampa sfrutti tutta la pagina, invece mi mette un bordo automatico oltre a quello che definisce l'utente.

    Secondo te che posso fare? Come deve essere il css per la stampa?
    Se vuoi ti posso mandare il file html che produco

    grazie mille

  10. #10
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,812
    se non è molto lungo posta il codice qui, sia l'HTML che il CSS.

    altrimenti i link alla pagina html e al file css

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.