Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 37 del 28/01/2019 00.01.28

Nascondi questo messaggio


Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida illustra le procedure utili a convertire uno o più file di immagini in qualsiasi formato in un unico file .pdf.

Preparativi

Installazione

In Lubuntu è necessario preventivamente Installare il pacchetto imagemagick.

Negli altri *buntu Imagemagick è preinstallato.

Configurazione

  1. Aprire con un editor di testo e con i privilegi di amministrazione il file /etc/ImageMagick-6/policy.xml per i rilasci dal 16.04 in poi, o il file /etc/ImageMagick/policy.xml per i rilasci fino al 14.04.

  2. Cercare la riga:

    <policy domain="coder" rights="none" pattern="PDF" />
  3. Modificare la riga in:

     <!--policy domain="coder" rights="none" pattern="PDF" /-->
  4. Salvare e chiudere il file.

Esecuzione

Prima di seguire la procedura è consigliato ordinare i file di origine assegnando loro dei nomi numerici (es. 01.jpeg, 02.jpeg, 03.jpeg) e spostandoli in una cartella dedicata.

Tramite terminale

Usando comando

  1. Avviare il terminale.

  2. spostarsi nella directory che contiene le immagini da convertire.

  3. Convertire tutti i file nel formato .pdf con il seguente comando:

    convert *.<formatoimmagine> Risultato.pdf

Sostituendo alla dicitura «formato immagine» il formato dell'immagine, es. png, jpeg, tiff, ecc., e «Risultato.pdf» il nome del file che si vuole creare.

Usando script

Questo script è utile per mantenere le corrette proporzioni delle immagini, nel caso serva stamparle come formato .pdf su foglio di dimensioni A4.

  1. Aprire un editor di testo e copiare lo script:

    # dipende da:  bc  imagemagick  poppler-utils
    # in Ubuntu dovrebbero essere pre-installati
    
    :<<FORMULE
    Pixels ÷ DPI = Inches
    Pixels ÷ Inches = DPI
    DPI x Inches = Pixels
    
    formato A4 in pollici:
    8.27 x 11.69
    FORMULE
    
    # dal formato A4 tolgo 1" per i margini (sup + inf; dx + sn): 0.5 + 0.5
    wInches=7.27
    hInches=10.69
    
    CLIError="\n
    Errore negli argomenti.  La sintassi deve essere:\n
    \n
        $(basename $0) </PERCORSO/IMMAGINE> [</PERCORSO/ALTRAIMMAGINE>] [...]
    \n"
    if [[ ! -f $1 ]]; then
        echo -e $CLIError
        exit
    fi
    
    nomefile=$(basename "$1")
    tempdir="/tmp/${nomefile%.*}/"
    outfile=$(dirname "$1")/${nomefile%.*}.pdf
    
    #crea la cartella dei file temporanei e ci si sposta
    mkdir -p "$tempdir"
    
    for infile in "$@"; do
        #infile="${path}$infile"
       
        # estrae le dimensioni in pixel dell'immagine
        read w h <<<$(identify -ping -format '%w %h' "$infile")
       
        # calcola il DPI nella pagina A4
        DPI=$(bc <<< "($w/$wInches+0.5)/1") # floating point arrotondato all'intero
    
        # calcola il n° di pixel verticali nella pagina A4 con quel DPI
        PPP=$(bc <<< "($DPI*10.69+0.5)/1") # floating point arrotondato all'intero
    
        # calcola il n° di pagine A4 necessarie
        # se restano pixel va aggiunta un'ultima pagina
        resto=$((h%PPP))
        [ $resto = 0 ] || ceiling=1; NPimg=$((h/PPP+ceiling))
    
        # a partire dall'immagine ne crea tante quante sono le pagine necessarie
        offset=0
        ((NPtot+=NPimg))
        for i in $(seq -f '%03g' $((1+NPtot-NPimg)) $NPtot); do
            convert "$infile" -crop ${w}x${PPP}+0+$offset "$tempdir${i}.png"
            # mette una cornice bianca di 0.5 inches per lato
            convert "$tempdir${i}.png" -bordercolor white \
                     -border $((DPI/2)) "$tempdir${i}.png"
            ((offset+=PPP))
        done
        # aggiunge all'ultima pagina il necessario margine bianco inferiore
        finale=$((PPP-resto))
        convert "$tempdir${i}.png" -gravity south \
                 -background white -splice 0x$finale "$tempdir${i}.png"
    done
    
    # poi le converte in formato pdf
    for png in "$tempdir"*.png; do
        convert $png -page A4 ${png/.*}.pdf
    done
    
    if [ $h -le $PPP -a $# = 1 ] # quando h <= PPP il PDF ha una sola pagina
    then
        cp "$tempdir${i}.pdf" "$outfile"
    else
        pdfunite "$tempdir"*.pdf "$outfile"
    fi
  2. Salvare col nome img2pdf e chiudere lo script.

  3. Dare i permessi d'esecuzione allo script:

    chmod +x img2pdf
  4. Creare la directory d'allocazione:

    sudo mkdir -p /usr/local/bin
  5. Copiare il file nella directory creata digitando il comando:

    sudo cp img2pdf /usr/local/bin/
  6. Usare lo script con la seguente sintassi:

    img2pdf nomeimmagine.<formatoimmagine>.

    o se trattasi di più immagini con la sintassi:

    img2pdf *.<formatoimmagine>

Tramite interfaccia grafica

Impostazioni

Queste impostazioni sono da fare solo dopo il primo avvio, dai successivi rimangono memorizzate

  1. Avviare il programma Converseen.

  2. Fare clic su File → settings, nel menù a tendina selezionare Italiano, premere Ok.

  3. Scorrere il Pannello delle azioni fino a Opzioni di output, fare clic su […] e selezionare la directory Immagini, fare clic su Nuova cartella e digitare Converseen, fare clic su OK.

  4. Chiudere e riavviare Converseen.

Utilizzo

  1. Fare clic su Apri immagini, selezionare la directory che contiene le immagini da convertire, selezionare tutto il contenuto.

  2. Spuntare nella finestra le immagini da convertire, oppure in alto fare clic sull'icona Spunta tutto.

  3. Impostare sotto la finestra nel menù a tendina Converti in: PDF - (Portable Document Format).

  4. Fare clic sull'icona Converti, nella finestrella di controllo terminata la conversione fare clic su Chiudi.

  5. Per chiudere il programma premere Ctrl+X.


  • Le immagini convertite sono rese disponibili nella directory /home/<nomeutente>/Immagini/Converseen.

Ulteriori risorse


CategoryGrafica CategoryMultimedia