Binarie Opzioni Pdfkit Wkhtmltopdf


Sfondo Dopo aver letto in giro mi è sembrato che Prawn è fuori e wkhtmltopdf è in. Sembra anche come i PDFKit e wickedpdf gemme per le rotaie sono il nuovo fresco. Così ho trovato uno screencast da Ryan su come utilizzare PDFKit. Ho installato tutto, provato wkhtmltopdf sulla CLI senza problemi, giocherellava attorno con Rails Impostazioniper eseguire più processi in modo che le opere di asset gasdotti, e tutto sembrava buono, tranne Im ancora bloccato alla fine del processo (in realtà sempre la risposta PDF da il server). Quando richiedo una versione. pdf del mio punto di vista (Im utilizzando l'opzione PDFKit Middleware) il mio browser si trova proprio lì in attesa di una risposta, ma non appena uccido delle guide elaborare il PDF mi aspettavo di ottenere solo allora si apre nel browser finestra. Ciò che dà Cosa Im OS Usando: OSX 10.8.1 Rails: 3.2.8 Rubino: 1.9.3 wkhtmltopdf: 0.11.0rc1 (anche se quando ho eseguito wkhtmltopdf - V si dice 0.10.0rc2) qt: 4.8.2 Che cosa Ive fatto utilizzato il PDFKit middleware caricando config. middleware. use PDFKit :: middleware nel mio file application. rb. inclusi gioiello PDFKit nel mio Gemfile e installato con Bundler impostare il. pdf mime-type nel mio mimetypes. rb initializer con Mime :: Type. registeralias applicationpdf. pdf aggiunto config. threadsafe per configenvironmentsdevelopment. rb per più thread così bene gasdotto conflitto pretende molto con il motore PDF testato wkhtmltopdf google google. pdf e ha generato un PDF della home page di Google come previsto provato scambiando PDFKit per wickedpdf e ha incontrato lo stesso problema (impiccagione, ma quando processo Rails viene ucciso il PDF rende come previsto) che cosa assomiglia Questa è la pagina html regolare resi da Rails (Ive offuscato i dati di clienti): Questa è l'uscita CLI da Rails quando provo a passare a localhost: 3000somepath. pdf. (L'applicazione si blocca durante l'attesa di una risposta): Quando ho finalmente uccidere il processo Rails con ctrl-c il PDF finalmente si presenta nel browser come mi aspettavo di vederlo (CSS e HTML resi correttamente, quindi le attività sembrano caricare bene) : Conclusioni So far Swapping PDFKit per wickedpdf e ottenere gli stessi risultati sembra farmi pensare il problema isnt con tali librerie, ma qualcosa a che fare con il mio ambiente di sviluppo. Ma wkhtmltopdf funziona bene dalla linea di comando, in modo che mi fa pensare che esso e QT stanno facendo il loro lavoro. Il problema deve essere in Rails. Forse Im non configurando qualcosa correttamente Richiesta d'aiuto Come faccio a determinare che cosa è esattamente il problema e come posso risolvere il problema Ill ti amo se mi potete aiutare LT3 Ive anche provato ad utilizzare un metodo alternativo di rendere il PDF (con. topdf) senza l'opzione middleware come segue (fare questo ho commentata config. middleware. use PDFKit :: middleware dal mio file application. rb): sintomi esattamente lo stesso, ma utilizzando WickedPdf attualmente. A questo punto, credo che il problema si trova con wkhtmltopdf pure. Purtroppo, nessuna delle raccomandazioni Ive stato in grado di trovare in StackGoogle ha lavorato per me. Invece, avevo bisogno di combinare diversi suggerimenti, tra cui alcuni trovati in questo post. birra disinstallazione wkhtmltopdf trovare ed eliminare tutte le copie di wkhtmltopdf in usrbin linea WickedPdf. config commento in configinitializers aggiungono config. threadsafe per development. rb rimuovere middleware e consentire spettacolo azione del controller principale per gestire le richieste pdf (potrebbe non essere necessario) aggiungere wkhtmltopdf-binario a Gemfile riavviare il server fascio potrebbe anche essere necessario aggiungere Mime :: Type. registeralias applicationpdf. pdf a configinitializersmimetypes. rb (per me, questo fa sì avvertimento: già inizializzato costante PDF) Il mio set-up è stato: Mac OSX Mountain Lion con Rails 3.2.1, WEBrick, Postgres e wkhtmltopdf-binario (0.9.9.1). ha risposto 3 aprile 13 a 23:08 provare a modificare configinitializerpdfkit. rb nel seguente modo: ha risposto 29 Maggio 14 at 12:15 La vostra risposta 2017 Stack Exchange, IncThis è un problema noto in wkhtmltopdf. L'algoritmo di page rottura utilizzato dal WebKit (WK in wkhtmltopdf) realmente non funziona bene per tabelle di grandi dimensioni. Mi permetto di suggerire rompere il tavolo fino a blocchi più piccoli che sono più facilmente diviso per pagine e utilizzando il css molto: hanno anche uno sguardo ai seguenti problemi wkhtmltopdf, hanno commenti interessanti che discutono ad esempio il problema tavolo splitting. C'è una soluzione JS che divide a livello di codice le tabelle nel 168 che potrebbero aiutare (io non usarlo però). Aggiornamento 08.11.2013 C'è molta discussione su questo problema 168 linkato sopra. Qualcuno è riuscito a compilare una versione di wkhtmltopdf che supporta meglio tabella di rottura, ma purtroppo sembra che la sua non è ufficialmente rilasciato e potrebbe contenere altri insetti. Non so come ottenerlo e non so come compilare su Windows, ma chiunque sia interessato può controllare ad esempio il commento qui (vedi nuovo aggiornamento di seguito). Aggiornamento 2014/02/24 Sarete felici di sapere che in wkhtmltopdf 0.12 questa funzione tra gli altri, è stata notevolmente migliorata. Tuttavia, attendere 0.12.1 e prova a fondo prima di iniziare a utilizzare qualsiasi nuova versione, la sua ancora un po 'instabile, anche se i nuovi ragazzi che lavorano su con antialize stanno facendo un ottimo lavoro (rocce ashkulz) Mantenere aggiornati alle wkhtmltopdf. org e GitHub. Il sito Google Code è obsoleto e di essere lentamente migrare. risposto 23 novembre 12 alle 9:01 Grazie Ho avuto questo problema troppo, ma la forchetta lei ha citato lavorato per me. ndash Fey 27 gennaio 14 alle 14:08 Grazie per l'informazione. La versione 0.12.1 risolve il problema interruzione di pagina. ndash Nidhi Sarvaiya 25 febbraio 14 alle 19:16 Nota, questa soluzione funziona solo con la recente versione 0.12.1. Tutto ciò prima ancora doesn39t lavoro. ndash Cerin 3 novembre 14 a 23:14 Ho lottato con questo per un paio di giorni. Si è rivelato il mio tavolo era in un div con uno stile di display: inline-block. Cambiato per bloccare e con le modifiche di cui sopra tutto è cominciato a lavorare ndash Hugh 29 gennaio 16 alle 10:55 E 'vecchio post, ma dal momento che stavo sprecando sacco di tempo cercando di trovare una soluzione adeguata, porrò qui, forse sarà essere utile a qualcuno. Quindi, da quello che ho letto, il problema è che con esso non lavorare. Ma in realtà, se si imposta su elemento che ha display: block funziona come previsto (come notato da qualche parte nel SO). così per semplice struttura della tabella CSS con e struttura della tabella funzionerà come previsto. Ho avuto caso po 'più complicato con rowspans, per cui la soluzione di cui sopra è stato romperlo a Paci, che wasnt effetto desiderato. Ho risolto utilizzando div per ogni rowspaned serie di linee. I miei js jQuery che fanno tutto il lavoro: non so se è necessario un tutto e non penso proprio perfetta, ma fa il lavoro. Testato su Chrome risposto solo il 31 al 13 Agosto 18:43 Nel mio caso particolare, per qualche motivo nessuna delle risposte precedenti ha funzionato per me. Che ha finito per lavorare era in realtà una combinazione di diverse cose. Ho installato (in Ubuntu 16.04) l'involucro wkhtmltopdf pitone chiamato PDFKit utilizzando PIP3, e poi invece di installare wkhtmltopdf tramite apt-get Ho installato la statica binario (versione 0.12.3) seguendo questo script qui Aggiunto questo CSS (come suggerito in una delle risposte qui): e poi anche aggiungere lttheadgt e lttbodygt tag come suggerito anche qui (senza i quali la tavola sarebbe ancora rompere in modo brutto): Con queste modifiche ora posso usare con successo modelli di Mako per generare il codice HTML e poi nutrire che a wkhtmltopdf e ottenere un PDF ben impaginato :) risposto 8 febbraio alle 21:36 tua risposta 2017 Stack Exchange, IncIf si desidera ulteriore processo generato PDF, si può leggere ad una variabile: è possibile specificare tutte le opzioni wkhtmltopdf. Si può cadere - in nome di opzione. Se l'opzione senza valore, utilizzare None, il valore dict False o per. Per le opzioni ripetibili (incl. Permettono, biscotto, su misura di testa, palo, postfile, eseguire script, sostituire) è possibile utilizzare una lista o una tupla. Con l'opzione che hanno bisogno di più valori (ad esempio --custom-header Authorization segreti) possiamo usare un 2-tuple (vedi esempio sotto). Per impostazione predefinita, PDFKit mostrerà tutti gli output wkhtmltopdf. Se non volerlo, è necessario passare l'opzione tranquilla: a causa di sintassi dei comandi wkhtmltopdf, TOC e opzioni di copertura deve essere specificata separatamente. Se avete bisogno di copertura prima di TOC, utilizzare l'opzione coverfirst: è possibile specificare i file CSS esterni quando la conversione di file o stringhe utilizzando l'opzione CSS. Attenzione Si tratta di una soluzione per questo bug in wkhtmltopdf. Si dovrebbe cercare opzione --user-style-sheet prima. È inoltre possibile passare opzioni tramite meta tag nel codice HTML: ogni chiamata API prende un paramater configurazione opzionale. Questo dovrebbe essere un caso di pdfkit. configuration) chiamata API (. Prende le opzioni di configurazione come paramaters iniziali. Le opzioni disponibili sono: wkhtmltopdf - la posizione del binario wkhtmltopdf. Per impostazione predefinita PDFKit tenterà di individuare questo con la quale (su sistemi di tipo UNIX) o dove (su Windows). metatagprefix - il prefisso per PDFKit specifiche meta tag - di default questo è Esempio pdfkit - - per quando wkhtmltopdf non è il PATH: IOError: Nessun eseguibile wkhtmltopdf trovato: Assicurarsi di avere wkhtmltopdf nel PATH o impostato tramite configurazione personalizzata (vedi precedente sezione). dove wkhtmltopdf in Windows o che wkhtmltopdf su Linux dovrebbe tornare percorso reale di binario. IOError: Comando non riuscito Questo errore significa che PDFKit è stato in grado di elaborare un ingresso. Si può provare a eseguire direttamente un comando dal messaggio di errore e vedere quale errore ha causato il fallimento (su alcune versioni wkhtmltopdf questo può essere causa di difetti di segmentazione)

Comments

Popular posts from this blog

Swing Trading Indicatori Per Amibroker

S & P Emini Trading Segnali

Forex Trading Club London