Ho un file PDF per il quale voglio cambiare le dimensioni delle sue pagine; chiamiamolo file.pdf . E ho ottenuto un altro file PDF che servirà da modello per file.pdf; chiamiamolo model.pdf .
Per chiarire:voglio file.pdf Le pagine di 's devono essere della stessa misura di model.pdf pagine di s.
Utilizzando pdfinfo su model.pdf Ottengo le seguenti informazioni rilevanti:
Non capisco davvero quali siano le prime due colonne del *Box i campi significano, ma facendo un po' di ricerca su Google sono giunto alla conclusione che il mio obiettivo sono le ultime due colonne del MediaBox campo. Quindi, voglio file.pdf essere 720x891 e penso che le unità siano pts .
Quindi ho trovato questo strumento chiamato pdfposter che dovrebbe essere in grado di modificare la dimensione delle pagine di un PDF, e l'ho fatto (notare che ho già effettuato la conversione da punti a pollici):
pdfposter -m10x12.375inch file.pdf new_file.pdf
Tutto va bene, ma quando controllo new_file.pdf con pdfinfo Ottengo:
Tagged:noForm:nonePages:32Encrypted:noPage size:630.22 x 891 ptsPage rot:0MediaBox:54.33 32.60 774.33 923.60CropBox:54.33 32.60 684.55 923.60BleedBox:54.33 32.60 684.55 923.60TrimBox:54.33 32.60 630.22 891.00ArtBox:54.33 32.60 630.22 891.00 Dimensione file:3005203 bytesOttimizzato:noVersione PDF:1.3
Chiaramente qualcosa è andato storto poiché la dimensione delle pagine del nuovo PDF è 774.33x923.60 e non 720x891; inoltre le prime due colonne del MediaBox cambiato da 0.00 0.00 a 54.33 32.60 e non ho idea del perché o di cosa significhi.
Ho anche provato a usare pdfjam ma aggiunge solo più spazio bianco ai bordi, lasciando inalterato il contenuto del PDF.
Quindi la mia domanda è:come posso cambiare la dimensione del mio file.pdf 's pagine a quella di model.pdf .
Nota: Per me è molto importante che il PDF ridimensionato sia della stessa qualità del PDF originale.
Risposta accettata:
Puoi usare pdfjam con --papersize argomento per impostare il formato carta di output. Potrebbe anche essere necessario utilizzare --scale e --offset se vuoi fare di più che ridimensionare la pagina e il suo contenuto insieme.
pdfjam --papersize="$(LC_ALL=C pdfinfo model.pdf | awk '/^Dimensione pagina:/ {printf "{%fbp,%fbp}", $3, $5}')" file .pdf nuovo_file.pdf