Unione di più PDF

  • Creatore
    Topic
  • #114216
    Massimiliano
    Partecipante
      Up
      0
      Down
      ::


      Buongiorno a tutti,

      ho il seguente problema: dovrei unire diversi file pdf in un unico documento (per rendere la stampa più agevole). Il problema è che ogni volta ho un numero/nome diverso di file (a volte solo 20, a volte più di 100).
      Per ora uso un metodo molto rozzo che consiste nel piazzare tanti \includepdf quanti sono i miei pdf. Non ho Adobe pro e la connessione non mi permette di usare tool online.
      Quindi volevo chiedervi: esiste un modo più pratico per fare quello che voglio?

      Grazie mille per la disponibilità.

    Visualizzazione 4 filoni di risposte
    • Autore
      Risposte
      • #114217
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::

          Marluxia” post=114602Buongiorno a tutti,

          ho il seguente problema: dovrei unire diversi file pdf in un unico documento (per rendere la stampa più agevole). Il problema è che ogni volta ho un numero/nome diverso di file (a volte solo 20, a volte più di 100).
          Per ora uso un metodo molto rozzo che consiste nel piazzare tanti \includepdf quanti sono i miei pdf. Non ho Adobe pro e la connessione non mi permette di usare tool online.
          Quindi volevo chiedervi: esiste un modo più pratico per fare quello che voglio?

          Grazie mille per la disponibilità.

          Ma certo.
          Basta usare uno script all’interno di LuaTeX.
          Considera questo codice di partenza:
          `% !TeX encoding = UTF-8
          % !TeX program = lualatex

          \documentclass{minimal}

          \begin{document}

          \directlua{
          local lfs = require [[lfs]]
          for file in lfs.dir(lfs.currentdir()) do
          print(file)
          end
          }

          \end{document}`
          Dovrebbe stampare sullo standard output i nomi di tutti i file nella cartella del sorgente.

          Il manuale della libreria lfs (Lua File System), si trova alla pagina
          https://keplerproject.github.io/luafilesystem/manual.html

          Per esempio, puoi ricavare tutti i nomi dei file di una directory e “stampare” un \includepdf per ciscuno di essi.
          Si può fare anche con qualcosa di più semplice, ma non è il caso di limitare le possibilità.
          R.

        • #114218
          strolego
          Partecipante
            Up
            0
            Down
            ::


            Oppure all’esterno di LaTeX puoi usare il programma pdftk che ti permette di unire, spezzare e manipolare in vario modo i file pdf

          • #114219
            LuglioM26
            Partecipante
              Up
              0
              Down
              ::


              Ciao, prova a guardare questa discussione, in particolare il comando `\foreach \x`

              Stefano

            • #114220
              Massimiliano
              Partecipante
                Up
                0
                Down
                ::


                Grazie a tutti per le risposte!

                @strolego
                se non risolvo con LaTeX il programma che mi hai consigliato sembra una buona alternativa, grazie.

                @LuglioM26
                quel codice lo avevo trovato anche io ma ha il problema che devo mettere a mano il nome dei pdf da quello che ho capito quindi, a quel punto, è più o meno uguale a mettere tanti includepdf.


                @robitex
                grazie per il codice, ho fatto qualche prova ma non riesco a capire come funziona.
                Dalle mie (scarse) conoscenze di programmazione mi sembra di capire che il codice “legga” i file della cartella e che stampi il loro nome (immagino sul terminale col comando “print”). Una volta eseguito il codice, però, nella cartella non trovo nessun file .out, sto sbagliando qualcosa?
                Sono abbastanza sicuro che il programa funzioni correttamente perché nella console di output vedo che ha letto i file pdf ma dice “warning (pdf backend): no pages of output.”, mi sfugge qualcosa?

                Grazie per la pazienza.

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

                  Marluxia” post=114618Grazie a tutti per le risposte!

                  @strolego
                  se non risolvo con LaTeX il programma che mi hai consigliato sembra una buona alternativa, grazie.

                  @LuglioM26
                  quel codice lo avevo trovato anche io ma ha il problema che devo mettere a mano il nome dei pdf da quello che ho capito quindi, a quel punto, è più o meno uguale a mettere tanti includepdf.


                  @robitex
                  grazie per il codice, ho fatto qualche prova ma non riesco a capire come funziona.
                  Dalle mie (scarse) conoscenze di programmazione mi sembra di capire che il codice “legga” i file della cartella e che stampi il loro nome (immagino sul terminale col comando “print”). Una volta eseguito il codice, però, nella cartella non trovo nessun file .out, sto sbagliando qualcosa?
                  Sono abbastanza sicuro che il programa funzioni correttamente perché nella console di output vedo che ha letto i file pdf ma dice “warning (pdf backend): no pages of output.”, mi sfugge qualcosa?

                  Grazie per la pazienza.

                  Esatto. Il sorgente stampa solamente i nomi dei file. Nessun pdf di uscita.
                  Si tratta solo di un esempio. Ecco cosa dovrebbe fare lo script che ho in mente:

                  1 leggo i nomi dei file pdf da unire, per esempio in una subdirectory
                  2 “stampo” il comando \includepdf{} in un ciclo for con tex.print
                  fine

                  Lo script potrebbe funzionare in modo diverso. Per esempio potrebbe leggere un file contenente le istruzioni per filtrare i file.
                  E molto altro…
                  R.

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

              Go to top