Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Creazione di PDF di grandi dimensioni

    ciao!

    avrei un consiglio da chiedere.
    allora, in azienda ho creato vari programma friubili dal web (tutti in php ovviamente).
    il problema è che, tra questi programmi, ce ne sta uno che dovrebbe creare un pdf di grandi dimensioni (arriviamo anche sui 100 MB).
    praticemnte è un unico pdf con un tot di fatture (prese per periodo, quindi in numero variabile).

    ho provato ad aumentare la memoria per lo script.
    ma cmq il programma dopo un pò si impalla e crasha.
    ho fatto varie prove ma nulla da fare.

    a questo punto, secondo voi, come potrei procedere per evitare questo problema?
    devo mollare totalmente php?
    oppure lancio un programma scritto in altro linguaggio (c++ o java)?
    o magari usando anche javascript con un web workers?

  2. #2
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Cosa c'entra javascript?
    Comunque fossi in te da PHP genererei a "blocchi" il PDF (da fattura 1 a 100, da 101 a 200...)
    Poi lancerei PDFTK per "fonderli" e farne uno solo

  3. #3
    Quote Originariamente inviata da MySQL Visualizza il messaggio
    Cosa c'entra javascript?
    Comunque fossi in te da PHP genererei a "blocchi" il PDF (da fattura 1 a 100, da 101 a 200...)
    Poi lancerei PDFTK per "fonderli" e farne uno solo
    javascript mi è venuto in mente per lanciare lo script in maniera asincrona.
    ho pensato potesse essere un'opzione.
    essendo in ambito web in generale non è vietato usare più linguaggi.

    a blocchi come dici, avevo già provato.
    ma in alcuni casi, dovrei fare blocchi molto piccoli.
    ci sono fatture che hanno anche 100 e più record.
    quindi l'avevo un pò abbandonata come idea.

  4. #4
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Quote Originariamente inviata da fermat Visualizza il messaggio
    a blocchi come dici, avevo già provato.
    ma in alcuni casi, dovrei fare blocchi molto piccoli.
    ci sono fatture che hanno anche 100 e più record.
    quindi l'avevo un pò abbandonata come idea.
    ... scusa ma che fatture sono, per occupare ognuna 1MB?
    Quelle che genero io stanno sui 50-60K.
    Forse contengono loghi etc che puoi ridurre drasticamente?

  5. #5
    mentre ti scrivevo ho avuto una "illuminazione".

    posso saltare la parte che riguarda l'estrazione delle righe delle fatture (che è molto dispendiosa).
    ho i nomi dei pdf a livello db (in testata), che corrispondono ai nomi dei pdf sul filesystem.
    quindi, scelto il periodo, posso fare direttamente un merge dei pdf che ho.

    detto in pesudocodice:
    PER OGNI TESTATA CHE FA PARTE DEL RANGE SCELTO
    PRENDI IL NOME DEL PDF
    FAI IL MERGE

    potrebbe funzionare.

  6. #6
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Posto che son fatture veramente fuori dell'ordinario, se hai già i PDF... perchè rifarli?
    Il tuo approccio mi sembra decisamente auspicabile!

  7. #7
    Quote Originariamente inviata da MySQL Visualizza il messaggio
    Posto che son fatture veramente fuori dell'ordinario, se hai già i PDF... perchè rifarli?
    Il tuo approccio mi sembra decisamente auspicabile!
    perchè è venerdì, è stata una giornata estenuante, e non ci avevo minimamente pensato.
    faccio mea culpa.

    per quanto riguarda le fatture.
    anche io ho fatture piccole (anche 20kb).
    solo che, lavorando in ambito b2b e non con clienti finali, può capitare di avere fatture ben più grosse.
    pensa ad un negoziante che ordina più di 100 pezzi.
    o pensa ad uno stock!!
    poi mettici anche il logo e può succedere.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.