GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann man die Seiten eines PDFs skalieren?

Ich habe eine PDF-Datei erhalten, für die ich die Seitengröße ändern möchte; Nennen wir es file.pdf . Und ich habe eine weitere PDF-Datei, die als Vorlage für file.pdf dienen wird; Nennen wir es model.pdf .

Zur Verdeutlichung:Ich möchte file.pdf ’s Seiten gleich zu sein wie model.pdf Seiten.

Verwenden von pdfinfo auf model.pdf Ich erhalte die folgenden relevanten Informationen:

Tagged:         no
Form:           none
Pages:          22
Encrypted:      no
Page size:      612 x 783 pts
Page rot:       0
MediaBox:           0.00     0.00   720.00   891.00
CropBox:           54.00    54.00   666.00   837.00
BleedBox:          54.00    54.00   666.00   837.00
TrimBox:           54.00    54.00   666.00   837.00
ArtBox:            54.00    54.00   666.00   837.00
File size:      3324788 bytes
Optimized:      no
PDF version:    1.7

Ich verstehe nicht wirklich, was die ersten beiden Spalten der *Box Felder bedeuten, aber beim Googeln bin ich zu dem Schluss gekommen, dass mein Ziel die letzten beiden Spalten der MediaBox sind Feld. Ich möchte also file.pdf 720x891 sein , und ich denke, die Einheiten sind pts .

Also fand ich dieses Tool namens pdfposter die in der Lage sein soll, die Größe der Seiten einer PDF-Datei zu ändern, und ich habe dies getan (beachten Sie, dass ich die Konvertierung von Punkten in Zoll bereits vorgenommen habe):

pdfposter -m10x12.375inch file.pdf new_file.pdf

Alles geht gut, aber wenn ich new_file.pdf überprüfe mit pdfinfo Ich bekomme:

Tagged:         no
Form:           none
Pages:          32
Encrypted:      no
Page size:      630.22 x 891 pts
Page rot:       0
MediaBox:          54.33    32.60   774.33   923.60
CropBox:           54.33    32.60   684.55   923.60
BleedBox:          54.33    32.60   684.55   923.60
TrimBox:           54.33    32.60   630.22   891.00
ArtBox:            54.33    32.60   630.22   891.00
File size:      3005203 bytes
Optimized:      no
PDF version:    1.3

Offensichtlich ist etwas schief gelaufen, da die Seitengröße der neuen PDF-Datei 774.33x923.60 ist und nicht 720x891; außerdem die ersten beiden Spalten der MediaBox geändert von 0.00 0.00 auf 54.33 32.60 und ich habe keine Ahnung warum oder was es bedeutet.

Ich habe auch versucht, pdfjam zu verwenden aber es fügt den Rändern nur mehr Leerraum hinzu, während der Inhalt der PDF-Datei unberührt bleibt.

Meine Frage ist also:Wie kann ich die Größe meiner file.pdf ändern ’s Seiten zu denen von model.pdf .

Hinweis: Es ist mir sehr wichtig, dass das in der Größe veränderte PDF die gleiche Qualität hat wie das Original-PDF.

Akzeptierte Antwort:

Sie können pdfjam mit dem --papersize verwenden Argument zum Festlegen der Ausgabepapiergröße. Möglicherweise müssen Sie auch --scale verwenden und --offset wenn Sie mehr tun möchten, als die Größe der Seite und ihres Inhalts zusammen zu ändern.

pdfjam --papersize="$(LC_ALL=C pdfinfo model.pdf | awk '/^Page size:/ {printf "{%fbp,%fbp}", $3, $5}')" file.pdf new_file.pdf

Linux
  1. Wie grep in PDF-Dateien?

  2. Wie kombiniere/füge ich Seiten in einer PDF-Datei (GUI) zusammen?

  3. So formatieren Sie Code innerhalb von Webseiten

  4. Wie liest man Linux Manpages?

  5. So konvertieren Sie PDF in Graustufen

So komprimieren Sie eine PDF-Datei in Ubuntu

So ändern Sie die Größe von Bildern mit Python

So komprimieren Sie PDF unter Linux [GUI &Terminal]

So konvertieren Sie eine Webseite unter Linux in PDF

So öffnen Sie eine PDF-Datei im Linux-Terminal

So verbinden Sie mehrere PDF-Seiten zu einer einzigen Seite