Php e latex: si può?

  • Creatore
    Topic
  • #32594
    Up
    0
    Down
    ::


    Mi serve un consiglio!

    Vorrei sviluppare un programma che, interfacciandosi con un database e con dei form di inserimento dati da parte dell’utente, mi generi un documento (doc, pdf o quant’altro, il formato non mi interessa) CORRETTAMENTE impaginato. Per correttamente intendo che non ci siano spazi vuoti, che il testo sia entro certi margini bene definiti, che le tabelle non vengano tagliate a piffero, etc etc.

    La prima idea era quella di utlizzare un’applicazione web php/mysql: in questo modo però riesco solamente a creare una pagina html che poi in alcun modo riesco a impaginare in un documento A4 senza doverci rimettere le mani (es: intestazione e piu pagina, testo giustificato, etc etc).
    Ho visto che esiste fpdf, che è uno strumento molto completo (anche se per certi versi abbastanza complesso) ma che mi permette di impaginare solamente una pagina per volta: ad es, se io volessi inserire una tabella secondo i dati di una query, se i dati sono tanti da occupare piu di una pagina in questo caso il programma mi stamperebbe fuori dai bordi, non mi andrebbe a pagina nuova (a meno che non mi mettessi a fare un controllo sulla lunghezza…mmm).

    Poi mi è venuto in mente latex: butto dentro testo “libero” con i suoi tag, definisco a priori lo stile di impaginazione e lui mi tira fuori il mio bel pdf formattato come Dio comanda.

    E’ possibile interfacciare in qualche modo ste due cose? O esistono altre tecnologie per fare quello che serve a me? Sempre che sia riuscito a spiegarmi bene..

    Sul forum ho trovato questo due discussioni:
    Discussione 1

    Discussione 2

    che FORSE fanno al caso mio.. ma non ne sono sicuro.

    Grazie per l’aiuto! 😀

    Andrea

Visualizzazione 12 filoni di risposte
  • Autore
    Risposte
    • #32595
      Up
      0
      Down
      ::

      Mi serve un consiglio!

      Vorrei sviluppare un programma che, interfacciandosi con un database e con dei form di inserimento dati da parte dell’utente, mi generi un documento (doc, pdf o quant’altro, il formato non mi interessa) CORRETTAMENTE impaginato. Per correttamente intendo che non ci siano spazi vuoti, che il testo sia entro certi margini bene definiti, che le tabelle non vengano tagliate a piffero, etc etc.

      La prima idea era quella di utlizzare un’applicazione web php/mysql: in questo modo però riesco solamente a creare una pagina html che poi in alcun modo riesco a impaginare in un documento A4 senza doverci rimettere le mani (es: intestazione e piu pagina, testo giustificato, etc etc).
      Ho visto che esiste fpdf, che è uno strumento molto completo (anche se per certi versi abbastanza complesso) ma che mi permette di impaginare solamente una pagina per volta: ad es, se io volessi inserire una tabella secondo i dati di una query, se i dati sono tanti da occupare piu di una pagina in questo caso il programma mi stamperebbe fuori dai bordi, non mi andrebbe a pagina nuova (a meno che non mi mettessi a fare un controllo sulla lunghezza…mmm).

      Poi mi è venuto in mente latex: butto dentro testo “libero” con i suoi tag, definisco a priori lo stile di impaginazione e lui mi tira fuori il mio bel pdf formattato come Dio comanda.

      E’ possibile interfacciare in qualche modo ste due cose? O esistono altre tecnologie per fare quello che serve a me? Sempre che sia riuscito a spiegarmi bene..

      Sul forum ho trovato questo due discussioni:
      Discussione 1

      Discussione 2

      che FORSE fanno al caso mio.. ma non ne sono sicuro.

      Grazie per l’aiuto! 😀

      Andrea

      La cosa è fattibile, ma non è una passeggiata. Noi stiamo lavorando ad un progetto molto sofisticato, e la parte che genera il file TeX è un mostro da quasi 10000 righe php. E siamo solo al 50% del progetto.
      Il problema principale è che non puoi “parlare” con LaTeX, cioè se incappi in un errore, te ne accorgi solo perché non arriva il pdf.
      Se i documenti che devi produrre sono “molto statici”, cioè hai solo poche zone che cambiano, la cosa è semplice. Se invece non sai “a priori” che cosa dovrai impaginare, il lavoro da fare è assai…

    • #32596
      Up
      0
      Down
      ::


      mmm il documento che dovrei creare è grandino, diciamo una 50ina di pagine di cui quasi il 90% è fisso ma la parte variabile mi cambia completamente l’impaginazione del documento..

      se dovessi solamente decidere quale variabile inserire dentro una tabella e se avessi immagini da inserire di dimensioni fisse, non ci sarebbero problemii (piu o meno)!

      Il problema è che le immagini possono esserci come non, e non sempre sono della stessa dimensione; le tabelle a volte sono di 10, a volte di 100 righe, a volte non ci sono nemmeno, e tutte queste cose vorrei poterle decidere tramite un form html.. mi sa tanto che a sto punto toccherà lavorare di fino con fpdf..

    • #32597
      Up
      0
      Down
      ::

      mmm il documento che dovrei creare è grandino, diciamo una 50ina di pagine di cui quasi il 90% è fisso ma la parte variabile mi cambia completamente l’impaginazione del documento..

      se dovessi solamente decidere quale variabile inserire dentro una tabella e se avessi immagini da inserire di dimensioni fisse, non ci sarebbero problemii (piu o meno)!

      Il problema è che le immagini possono esserci come non, e non sempre sono della stessa dimensione; le tabelle a volte sono di 10, a volte di 100 righe, a volte non ci sono nemmeno, e tutte queste cose vorrei poterle decidere tramite un form html.. mi sa tanto che a sto punto toccherà lavorare di fino con fpdf..

      La lunghezza del documento è ininfluente, ho provato a generare un documento di quasi 200 pagine e non ho avuto problemi.
      Le rogne sono:
      – tabelle: sono un grattacapo anche manualmente, figurarsi in automatico;
      – figure: usando l’estensione per ImageMagick sono riuscito a creare una gestione più o meno valida, e al momento posso impaginare quasi tutte le immagini;
      – multilingua: per esigenze del cliente alcuni documenti devono uscire in 4 lingue (eng + altre 3), e spesso ho problemi di font (caratteri mancanti nella codifica);
      – simboli e caratteri non latini: occorre un filtro per intercettare tutti i caratteri che mandano LaTeX nel pallone.

    • #32598
      Up
      0
      Down
      ::


      Agliotto\n

      masky\n

      mmm il documento che dovrei creare è grandino, diciamo una 50ina di pagine di cui quasi il 90% è fisso ma la parte variabile mi cambia completamente l’impaginazione del documento..

      se dovessi solamente decidere quale variabile inserire dentro una tabella e se avessi immagini da inserire di dimensioni fisse, non ci sarebbero problemii (piu o meno)!

      Il problema è che le immagini possono esserci come non, e non sempre sono della stessa dimensione; le tabelle a volte sono di 10, a volte di 100 righe, a volte non ci sono nemmeno, e tutte queste cose vorrei poterle decidere tramite un form html.. mi sa tanto che a sto punto toccherà lavorare di fino con fpdf..

      La lunghezza del documento è ininfluente, ho provato a generare un documento di quasi 200 pagine e non ho avuto problemi.
      Le rogne sono:
      – tabelle: sono un grattacapo anche manualmente, figurarsi in automatico;
      – figure: usando l’estensione per ImageMagick sono riuscito a creare una gestione più o meno valida, e al momento posso impaginare quasi tutte le immagini;
      – multilingua: per esigenze del cliente alcuni documenti devono uscire in 4 lingue (eng + altre 3), e spesso ho problemi di font (caratteri mancanti nella codifica);
      – simboli e caratteri non latini: occorre un filtro per intercettare tutti i caratteri che mandano LaTeX nel pallone.

      come mai ti “ostini” a utlizzare latex, piuttosto che una delle altre soluzioni che ho elencato sopra?

    • #32599
      Up
      0
      Down
      ::

      come mai ti “ostini” a utlizzare latex, piuttosto che una delle altre soluzioni che ho elencato sopra?

      Il target finale è un manuale tecnico ad alta qualità.
      LaTeX permette di evitare di dover gestire direttamente una serie di cose che diversamente sarebbero molto complicate da gestire.
      Comunque stiamo valutando altre soluzioni, il problema è che se non si trova qualcosa di già fatto od almeno abbozzato, risulta molto difficile trovare il tempo (cioè i soldi) per realizzare un convertitore da (qualcosa, es XML) a pdf.
      FPDF non è malvagio, ma alcune funzioni tipo numerazioni, indici, riferimenti, ecc. andrebbero gestiti ex-novo ed al momento non c’è spazio di manovra: siamo partiti con LaTeX e la versione 1.0 sarà consegnata con LaTeX. Per la 2.0 vedremo (forse XeTeX o ConTeXt, o un qualcosa fatto in casa).

    • #32600
      Up
      0
      Down
      ::

      come mai ti “ostini” a utlizzare latex, piuttosto che una delle altre soluzioni che ho elencato sopra?

      Il target finale è un manuale tecnico ad alta qualità.
      LaTeX permette di evitare di dover gestire direttamente una serie di cose che diversamente sarebbero molto complicate da gestire.
      Comunque stiamo valutando altre soluzioni, il problema è che se non si trova qualcosa di già fatto od almeno abbozzato, risulta molto difficile trovare il tempo (cioè i soldi) per realizzare un convertitore da (qualcosa, es XML) a pdf.
      FPDF non è malvagio, ma alcune funzioni tipo numerazioni, indici, riferimenti, ecc. andrebbero gestiti ex-novo ed al momento non c’è spazio di manovra: siamo partiti con LaTeX e la versione 1.0 sarà consegnata con LaTeX. Per la 2.0 vedremo (forse XeTeX o ConTeXt, o un qualcosa fatto in casa).

      Puoi dare un’occhiata a XMLTeX e JadeTeX, oltre che a ConTeXt

      Ciao
      Enrico

    • #32601
      Up
      0
      Down
      ::

      [quote]come mai ti “ostini” a utlizzare latex, piuttosto che una delle altre soluzioni che ho elencato sopra?

      Il target finale è un manuale tecnico ad alta qualità.
      LaTeX permette di evitare di dover gestire direttamente una serie di cose che diversamente sarebbero molto complicate da gestire.
      Comunque stiamo valutando altre soluzioni, il problema è che se non si trova qualcosa di già fatto od almeno abbozzato, risulta molto difficile trovare il tempo (cioè i soldi) per realizzare un convertitore da (qualcosa, es XML) a pdf.
      FPDF non è malvagio, ma alcune funzioni tipo numerazioni, indici, riferimenti, ecc. andrebbero gestiti ex-novo ed al momento non c’è spazio di manovra: siamo partiti con LaTeX e la versione 1.0 sarà consegnata con LaTeX. Per la 2.0 vedremo (forse XeTeX o ConTeXt, o un qualcosa fatto in casa).

      Puoi dare un’occhiata a XMLTeX e JadeTeX, oltre che a ConTeXt

      Ciao
      Enrico[/quote]
      Il problema vero è che manca il tempo! Quando il progetto è iniziato, in fase di kickoff ho quantificato 2 anni di lavoro (di cui 6 mesi per cercare e sperimentare, ed altri 6 a scrivere delle specifiche degne di nota). Sono stato quasi lapidato. A sentire il Grande Capo ed il suo Fido Scudiero 6 mesi erano più che sufficienti per consegnare il progetto al Maestoso Cliente!
      Sono passati più di 2 anni, il progetto è stato rifatto da capo almeno 3 volte, e verrà rifatto per la quarta volta perché il Maestoso Cliente ha sollevato delle eccezioni sul fatto che il prodotto non faccia uso di alcuno standard… quando poi lui è il primo che adotta nei suoi documenti uno stile di impaginazione che è tutto fuorché standard!
      Per tornare in topic, XMLTeX mi sembra datato (la documentazione è del 2000), JadeTex lo avevo sbirciato, ma poi ho lasciato perdere perché ero pressato dalle continue richieste di ‘vedere qualcosa di funzionante’, richieste che sono iniziate il giorno dopo l’inizio del progetto.
      C’è poi il problema che in Linux JadeTeX spesso si porta dietro TeTex, mentre io adopero TexLive, e che comunque si tratta di ‘wrapper’ tra XML e TeX, mentre vorrei trovare qualcosa che senza TeX mi permetta di convertire un XML (ad esempio in standard DITA) in un pdf pronto per la stampa in tipografia.
      Allo stato attuale tutto quello che ho trovato permette al massimo di ottene un pdf leggibile, ma non adatto per stampe o fornitura come ‘manuale utente’.

    • #32602
      Up
      0
      Down
      ::

      C’è poi il problema che in Linux JadeTeX spesso si porta dietro TeTex, mentre io adopero TexLive, e che comunque si tratta di ‘wrapper’ tra XML e TeX, mentre vorrei trovare qualcosa che senza TeX mi permetta di convertire un XML (ad esempio in standard DITA) in un pdf pronto per la stampa in tipografia.
      Allo stato attuale tutto quello che ho trovato permette al massimo di ottene un pdf leggibile, ma non adatto per stampe o fornitura come ‘manuale utente’.

      Con sistemi basati su Debian non è difficile far credere a dpkg che si è installato TeX: ci sono istruzioni in questa pagina in francese. Non è così difficile seguirlo; poi puoi installare la TeX Live 2008.

      Ma se vuoi proprioi una conversione XML -> PDF senza TeX, sei OT. 🙂

      Ciao
      Enrico

    • #32603
      robitex
      Amministratore del forum
        Up
        0
        Down
        ::


        Utilizzare LaTeX come motore di reporting è molto interessante, tuttavia ho recuperato dalla memoria (mia non quella dei calcolatori 😆 ) alcune informazione tratte da un libro che descriveva lo standard XML, ed ho ritrovato questo:
        http://xmlgraphics.apache.org/fop/

        Probabilmente già lo conosci, comunque lo segnalo ugualmente.
        Bye

      • #32604
        Up
        0
        Down
        ::

        C’è poi il problema che in Linux JadeTeX spesso si porta dietro TeTex, mentre io adopero TexLive, e che comunque si tratta di ‘wrapper’ tra XML e TeX, mentre vorrei trovare qualcosa che senza TeX mi permetta di convertire un XML (ad esempio in standard DITA) in un pdf pronto per la stampa in tipografia.
        Allo stato attuale tutto quello che ho trovato permette al massimo di ottene un pdf leggibile, ma non adatto per stampe o fornitura come ‘manuale utente’.

        Con sistemi basati su Debian non è difficile far credere a dpkg che si è installato TeX: ci sono istruzioni in questa pagina in francese. Non è così difficile seguirlo; poi puoi installare la TeX Live 2008.

        Ma se vuoi proprioi una conversione XML -> PDF senza TeX, sei OT. 🙂

        Ciao
        Enrico

        La questione è complessa: il problema principale è il controllo sulla presenza di errori. Più lunga è la catena dal sorgente all’output finale, maggiori sono le probabilità di un fallimento senza colpevoli. Comunque ora viaggio a puro LaTeX.
        Per quanto riguarda Debian, quando si va in ambito enterprise occorre fare il seguente ragionamento: se ci possono essere dei problemi, bisogna fare in modo di trovare il colpevole certo. Il primo passo è leggere le “supported platforms” per ogni software che si andrà ad utilizzare, ed in genere si ha RedHat e SuSE. In questo modo quando si apre una chiamata all’”Hell Desk”, non ci sono scuse del tipo “Il prodotto non è certificato per Debian”…

      • #32605
        Up
        0
        Down
        ::

        Utilizzare LaTeX come motore di reporting è molto interessante, tuttavia ho recuperato dalla memoria (mia non quella dei calcolatori 😆 ) alcune informazione tratte da un libro che descriveva lo standard XML, ed ho ritrovato questo:
        http://xmlgraphics.apache.org/fop/

        Probabilmente già lo conosci, comunque lo segnalo ugualmente.
        Bye

        Sinceramente, lo avevo scartato quando ho letto la parola ‘Java’…
        Però mi sa che mi tocca studiare ANCHE Java, quandi potrebbe tornare in pista…

      • #32606
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::

          Utilizzare LaTeX come motore di reporting è molto interessante, tuttavia ho recuperato dalla memoria (mia non quella dei calcolatori 😆 ) alcune informazione tratte da un libro che descriveva lo standard XML, ed ho ritrovato questo:
          http://xmlgraphics.apache.org/fop/

          Probabilmente già lo conosci, comunque lo segnalo ugualmente.
          Bye

          Sinceramente, lo avevo scartato quando ho letto la parola ‘Java’…
          Però mi sa che mi tocca studiare ANCHE Java, quandi potrebbe tornare in pista…

          Perché cosa avrebbe che non va il linguaggio ‘Java’?
          Ciao

        • #32607
          Up
          0
          Down
          ::

          [quote]Utilizzare LaTeX come motore di reporting è molto interessante, tuttavia ho recuperato dalla memoria (mia non quella dei calcolatori 😆 ) alcune informazione tratte da un libro che descriveva lo standard XML, ed ho ritrovato questo:
          http://xmlgraphics.apache.org/fop/

          Probabilmente già lo conosci, comunque lo segnalo ugualmente.
          Bye

          Sinceramente, lo avevo scartato quando ho letto la parola ‘Java’…
          Però mi sa che mi tocca studiare ANCHE Java, quandi potrebbe tornare in pista…

          Perché cosa avrebbe che non va il linguaggio ‘Java’?
          Ciao[/quote]
          Niente. Il problema che aggiunge un vincolo in più al progetto.
          Ed al momento voglio tenermi leggero.

      Visualizzazione 12 filoni di risposte
      • Devi essere connesso per rispondere a questo topic.

      Go to top