2011-09-25 18 views
5

Non sono stato in grado di trovare risposte alle mie domande sui vari post sullo stesso argomento, ecco perché farò domande più specifiche qui.wkhtmltopdf vs fpdf e domande riguardanti l'uso e le prestazioni (da HTML a PDF)

Le mie domande riguardano wkhtmltopdf e fpdf. Ho bisogno di uno di quelli per creare fatture in 1 pagina (design davvero di base) e di 1 pagina (design di base), quindi documenti PDF molto piccoli.

Ho letto che molte persone raccomandano wkhtmltopdf a causa delle sue prestazioni, ma per documenti di una pagina di piccole dimensioni fa davvero la differenza rispetto a fpdf? E 'davvero meno consumando la memoria? Più veloce?

So che è una domanda sciocca ma ho anche bisogno di sapere se wkhtmltopdf può essere eseguito più volte contemporaneamente. Voglio dire, se ci sono 1000 utenti sul mio sito che cercano di salvare la loro fattura in PDF allo stesso tempo? C'è un limite, come funziona? So che fpdf è una classe php quindi non devo "preoccuparmi" di questo (ho solo bisogno della corretta configurazione php.ini immagino).

Che cosa suggeriresti? Per documenti PDF piccoli ma prestazioni elevate per essere in grado di gestire molte richieste contemporaneamente.

Ci sono altre opzioni?

Grazie per il vostro aiuto!

risposta

9

La risposta breve è sì - è possibile creare istanze multiple di wkhtmltopdf contemporaneamente, ciascuna convertendo la propria pagina html in pdf. Tuttavia, wkhtmltopdf viene eseguito come un processo del sistema operativo, il che significa che se 1000 utenti stanno visualizzando le loro fatture allo stesso tempo, verranno generati 1000 processi wkhtmltopdf nel server, che probabilmente non è ciò che si desidera.

D'altra parte, FPDF viene eseguito come parte del processo del server Web all'interno del runtime di PHP e non avrà questa limitazione. Se stai creando una fattura piccola o addirittura grande, ti suggerirò di usare FPDF dato che è abbastanza facile creare una fattura usando FPDF. Non solo avrai un grande controllo sul layout della pagina PDF, ma potrai anche risparmiare tempo durante la manutenzione/upgrade in seguito.

Uno dei problemi riscontrati con wkhtmltopdf è l'interruzione di pagina. Wkhtmltopdf non romperà le tue pagine come ci si potrebbe aspettare. Ad esempio, una riga di testo può essere suddivisa tra due pagine: la parte superiore di una riga di testo che appare alla fine di una pagina e la parte inferiore che appare all'inizio della pagina successiva. Per evitare questo comportamento, devi impostare gli attributi css page-break-after o page-break-before in maniera giudiziosa nelle tue pagine html, il che può essere difficile a volte perché non sei sicuro di dove si romperà la pagina.

+0

Grazie ad Indra, questa è stata la risposta che stavo cercando e grazie per le informazioni/dettagli. – Mike

Problemi correlati