2012-07-27 22 views
21

Ich habe 16 JPG-Dateien, die rund 920x1200 Pixel sind (die Breiten unterscheiden sich geringfügig, aber die Höhen sind alle 1200). Ich versuche, sie in eine PDF-Datei mit:Wie kontrolliere ich PDF-Papiergröße mit ImageMagick?

convert *.jpg foo.pdf 

Aber die resultierende Papiergröße ist 1,53x2 Zoll. Wenn ich die Argumente -page Letter übergebe, wird die Seitengröße zu einer verwirrenden 1,02 x 1,32 Zoll. Was läuft hier falsch? Alle Informationen, die ich finden kann, deuten darauf hin, dass dies funktionieren sollte. Ich möchte nur ein Dokument, das aus 16 Seiten im Letter-Format besteht.

Antwort

7

Für Brief müssen Sie die Größe als 792x612 PostScript-Punkte angeben. Deshalb versuchen Sie diesen Befehl:

convert \ 
    in1.jpg \ 
    in2.jpg \ 
    in3.jpg \ 
    in4.jpg \ 
    in5.jpg \ 
    -gravity center \ 
    -resize 792x612\! \ 
    letter.pdf 

Werke für mich mit ImageMagick Version 6.7.8-3 2012-07-19 Q16 auf Mac OS X:

 
identify -format "%f[%s] : %W x %H\n" letter.pdf 
    letter.pdf[0] : 792 x 612 
    letter.pdf[1] : 792 x 612 
    letter.pdf[2] : 792 x 612 
    letter.pdf[3] : 792 x 612 
    letter.pdf[4] : 792 x 612 

Oder

 
pdfinfo -f 1 -l 5 letter.pdf 
    Title:   _ 
    Producer:  ImageMagick 6.7.8-3 2012-07-19 Q16 http://www.imagemagick.org 
    CreationDate: Fri Jul 27 22:28:00 2012 
    ModDate:  Fri Jul 27 22:28:00 2012 
    Tagged:   no 
    Form:   none 
    Pages:   5 
    Encrypted:  no 
    Page 1 size: 792 x 612 pts (letter) 
    Page 1 rot: 0 
    Page 2 size: 792 x 612 pts (letter) 
    Page 2 rot: 0 
    Page 3 size: 792 x 612 pts (letter) 
    Page 3 rot: 0 
    Page 4 size: 792 x 612 pts (letter) 
    Page 4 rot: 0 
    Page 5 size: 792 x 612 pts (letter) 
    Page 5 rot: 0 
    File size:  178642 bytes 
    Optimized:  no 
    PDF version: 1.3 
+0

Das führte zu einem verzerrten, mehr quadratischen Seitenverhältnis, und die Seitengröße sagt 1.32x1.02 Zoll. – mackstann

+0

Welche Version von IM verwenden Sie? (Führen Sie 'convert -version' aus, um es herauszufinden) –

+0

Wie haben Sie die Seitengröße als '1,32x1,02 Zoll' ermittelt? –

6

Ich war gerade erfolgreich mit convert file.mng -page letter file.pdf

+0

Das Bild wird nicht skaliert (verkleinert/vergrößert), um optimal an die Seitengröße angepasst zu werden. –

11

Diese Frage ist ziemlich alt, aber ich hatte ein ähnliches Problem und ich denke, ich habe die Lösung gefunden.

Die Dokumentation für die Option -page besagt: "Diese Option wird zusammen mit -density verwendet, aber die Beziehung zwischen den Optionen scheint ein wenig unklar, möglicherweise weil die Dokumentation auf Rasterbilder ausgerichtet ist.

Aus dem Experimentieren mit den Einstellungen habe ich festgestellt, dass die PDF-Seitengröße durch die Kombination von -page-Dichte und -Units gesteuert werden kann. Die documentation für -page zeigt, dass der Buchstabe der gleiche wie Eingabe von 612 x 792 ist. Die Kombination -density 72 mit -units pixelperinch gibt Ihnen (612px/72px) * 1in = 8.5in.

convert *.jpg -units pixelsperinch -density 72 -page letter foo.pdf sollte tun, was das ursprüngliche Plakat wollte.

Verwandte Themen