Domanda

Voglio essere in grado di generare un file PDF altamente grafico (con molto contenuto di testo) dai dati che potrei avere in un database o xml o in qualsiasi altra forma strutturata.

Attualmente il nostro graphic designer crea manualmente questi file PDF in Photoshop dopo aver ottenuto il contenuto come documento MS Word. Ma di solito, ci sono più di 20 revisioni del contenuto; piccoli cambiamenti qua e là, correzioni ortografiche, ecc.

I 2 svantaggi sono: 1) Il tempo del graphic designer è inutilmente occupato. La prima versione è l'unica su cui dovrebbe lavorare. 2) Il file PDF diventa il documento che ora ha il contenuto rivisto finale e il contenuto iniziale non è sincronizzato con esso. Quindi, se il contenuto iniziale deve essere altrove (come su un sito Web), dobbiamo ricrearlo dal file PDF.

La generazione del file PDF mi aiuterà a risolvere entrambi questi problemi. Forse in qualche modo in cui il graphic designer crea un "Template" e quindi inserisce tag / titolari e mappa questi tag / titolari con i dati pertinenti.

Grazie :-)

È stato utile?

Soluzione

Ci sono alcuni strumenti là fuori per farlo. XSL-FO è utile. Qui è un tutorial per creare un pdf da xml (o xhtml) con bozzolo. Vedi anche Apache FOP .

È possibile formattare i dati SQL come XML e utilizzare comunque gli stessi modelli in questo modo.

Altri suggerimenti

Uso la libreria python di ReportLab per questo. Potrebbe forse risolvere il tuo problema, ma dovrai fare un po 'di lavoro ...

In passato ho scritto script che sputavano LaTeX e poi ho usato texi2pdf per risolvere questo tipo di problema.

Dai un'occhiata a iReport e JasperReports su http://jasperforge.org . iReport ti consente di progettare report, quindi puoi riempirlo a livello di programmazione con la libreria JasperReports (Java) o semplicemente utilizzare iReport per creare manualmente il report.

L'ho usato solo per dati tabulari, ma non credo che ci sarebbero problemi per altri tipi di documenti.

È possibile creare un modulo e popolare le voci a livello di codice utilizzando una libreria pdf come iText (Java).

Potresti dare un'occhiata al flusso di lavoro in PostScript che è un testo semplice che puoi facilmente comporre da frammenti. Quindi puoi utilizzare qualsiasi strumento gratuito per convertire in PDF.

Dai un'occhiata a Prince XML . Questo strumento consente di generare PDF basato su XML o HTML e CSS.

Un modo possibile è utilizzare un motore di template, come FreeMarker o StringTemplate: questi sono spesso usati per generare HTML, ma sono abbastanza flessibili da produrre qualsiasi formato, in realtà.
Il problema è creare un modello PDF, suppongo. Forse puoi prendere un output di esempio e modificarlo per sostituire i dati con segnaposto che devono essere compilati dal motore del modello. Potrebbe non essere banale!

Sembra un lavoro che SQL Server Reporting Services può gestire abbastanza facilmente.
Reporting Services consente di eseguire query sui dati, definire il layout ed esportare in PDF senza alcun intervento. L'output PDF può essere distribuito tramite e-mail, archiviato in una condivisione file e accessibile tramite una pagina sul server di report.
Può gestire anche origini dati XML.

Un altro approccio alla generazione di un file PDF dai dati consiste nell'utilizzare gambero , che si basa su ruby ??. Sono rimasto piacevolmente sorpreso da quanta funzionalità è inclusa nel gambero. Potrebbero essere necessari alcuni investimenti in anticipo, ma questo approccio ti darà molta flessibilità.

Puoi combinare CSStoXSLFO con XEP di RenderX per un output di alta qualità. Con questa soluzione è possibile unire i dati XML in un modello XHTML, decorato con CSS. Può anche generare grafici con la fantastica libreria JFreeChart. Sono supportate le funzionalità multimediali della pagina CSS3.

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