2009-09-04 11 views
26

Sto provando a eseguire il rendering di circa 100.000 - 80 record di colonne tramite FOP e si carica praticamente ogni volta (OutOfMemoryException). So che iText potrebbe gestire questo tipo di carico ma non posso usarlo a causa della licenza LGPL. Esistono librerie Java alternative a iText in grado di gestire il rendering di un volume elevato di dati in PDF?Esistono alternative di creazione del PDF Java a iText?

+2

Perché non si può usare LGPL? – cletus

+0

Perché non iText? http://stackoverflow.com/questions/602977/interactive-pdf-creation-alternatives-to-acrobat – adatapost

+0

Um, ha citato iText ma ha un vincolo a causa della licenza. – cletus

risposta

24

Esistono librerie di generazione di PDF commerciali, ad esempio BFO e ElegantJ. Se hai bisogno di open source, c'è PDFBox, ma non so se è pronto per la produzione.

+0

Grazie per i suggerimenti darò un'occhiata a loro. –

+1

PdfBox è attivo, solo la home page è http://pdfbox.apache.org ora. – xmedeko

+3

distribuiamo con pdfbox - ha funzionato molto bene. –

2

Dai un'occhiata a RenderX per un'alternativa alla FOP.

Costa denaro, ma se avete una soluzione esistente sul posto che potrebbe essere la più economica.

1

Aspose offerte a PDF component for Java. Aspose viene anche utilizzato per creare documenti Word, Excel, PowerPoint ... in Java (o .Net).

Tuttavia, non è un software gratuito ...

+1

La libreria di Aspose Java PDF è una spazzatura calda. Non supporta nemmeno la formattazione HTML. – iandisme

+0

Mai avuto una buona esperienza con qualsiasi prodotto Aspose - in più, costano soldi. – vikingsteve

2

Hai provato ad aumentare la quantità di memoria riservata a disposizione della JVM? OUtOfMemory durante l'elaborazione di enormi quantità di dati richiede di solito più memoria.

+0

Sì, il problema è che FOP richiede di scaricare tutto il documento XML in memoria, semplicemente non può gestire il carico. Ho aumentato lo spazio dell'heap fino a 1 GB e continuo a non andare. –

1

Qoppa e Crionics offrono entrambi strumenti commerciali per creare PDF.

-1

Questo potrebbe essere un po 'tardi per te, Mike C. ma nel caso in cui altri abbiano requisiti di ridistribuzione e requisiti di ridistribuzione di documenti di grandi dimensioni, allora vale la pena condividere. Docmosis L'edizione della comunità può essere ridistribuita liberamente e può produrre documenti di grandi dimensioni con un'impronta di memoria costante (elaborazione basata sul flusso). Tu (oi tuoi clienti - dal momento che stai implicando la ridistribuzione) dovresti essere disposto a installare OpenOffice da qualche parte per consentire la conversione.