Domanda

Ho bisogno di visualizzare alcuni contenuti HTML come verrà stampato. Fondamentalmente, io voglio emulare la funzione di anteprima di stampa del browser.

Non sono sicuro di come fare questo solo con HTML / CSS / JavaScript. L'unica soluzione mi è venuta è quello di convertire il codice HTML in PDF in modo E'divisi in pagine e poi convertire che i PDF in immagini e stampare ogni immagine un muggito l'altro.

Sarà veramente utile se qualcuno può puntare un metodo in avanti più dritto. Non sono nemmeno sicuro se questo è posibble.

A proposito, sto usando PHP nel backend, quindi se c'è una classe PHP per questo sarà disponibile.

Le dimensioni della pagina per diplaying sarà lettera, non importa ciò che l'utente abbia configurato

Questo come dovrebbe apparire nel browser: alt text

È stato utile?

Soluzione

Non credo che questo sia possibile. Non si può conoscere tutti degli utenti di stampa-settings nel browser (Javascript) e sicuramente non sul server (php, asp, java).

Aggiorna

Pensare in questo modo (si prega di tenere presente che un dignitoso 100% anteprima di stampa pezzo non è possibile):

  • l'utente naviga alla pagina e chiede un anteprima di stampa
  • Sito fornisce anteprima di stampa (preferibilmente in formato HTML, altrimenti png o pdf)
  • Utente ama e vuole stampare:
    1. Dal browser
    2. Da alcune visualizzazione di immagini / programma di editing (png)
    3. Da Acrobat (pdf)
  • Ogni soluzione di stampa ha il proprio Stampa ... finestra. È possibile modificare le impostazioni di stampa qui.

E 'l'ultimo punto in cui tutto quello che volete fallisce ... Non avete il controllo su l'uscita più a quel punto (dal tuo sito web) ...

Altri suggerimenti

Come altri hanno punto fuori, non si può fare questo. La mia raccomandazione è che si effettua una versione "printer-friendly" che contiene solo un semplice sfondo bianco e testo nero. Ma questo è quanto di più vicino si può arrivare al vero e proprio "anteprima di stampa".

HTML non era veramente significato per il layout di pagina, è stato concepito per essere letto su schermo. Perchè è la pagina browser di anteprima non è abbastanza buono?

In ogni modo, quello che si potrebbe fare è cercare di convertire il codice HTML al lattice o qualcosa di simile, e rendere che a un PDF o PNG sul lato server e visualizzare quello. Ma sarebbe precludere utilizzando layout HTML molto complicato altrimenti si otterrà piuttosto brutto.

Penso che ci sia una soluzione semplice.

Si può chiedere all'utente la dimensione della pagina e alto, in basso, a sinistra, margine destro. Poi il rendering della pagina in PDF utilizzando queste impostazioni. PDF garantirà che la pagina verrà stampato come generato.

Credo che questo approccio dovrebbe funzionare bene.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top