Zentrierung ein .jpg-Bild in PDF mit Imagemagick?

Ich bin mit convert version ImageMagick 6.6.2-6 2011-03-16, und ich möchte es verwenden, um zu generieren, eine A4-pdf-Datei von einem Bild, wo das Bild wird nicht skaliert und zentriert.

Ich bin mit den folgenden (als Abwandlung des Die überlagerung von Bildern mit ImageMagick):

# generate a 100x100 JPG with just red color
convert -size 100x100 xc:red red.jpg

# generate PDF from JPG
convert -page A4 xc:white red.jpg -gravity center -composite -format pdf out.pdf

... aber, im Grunde nichts zeigt? Das gleiche passiert, für ein png-Bild...

Beachten Sie, dass

  • Nur 'convert -page A4 red.jpg out.pdf' funktioniert - aber das Bild ist nicht zentriert; (-gravity center Ursachen Bild nicht zu zeigen)
  • Wenn das Bild im png -, ' convert -page A4 -gravity center red.png out.pdf ' funktioniert in der Tat fein

... ich würde jedoch gerne convert zum einbetten der Inhalt der JPEG-Strom direkt - also, ich möchte nicht konvertieren, JPG zu PNG ersten.

So, würde es möglich sein, mit convert zu center ein JPG-Bild im DIN A4-PDF-Seite direkt?

Vielen Dank im Voraus für alle Antworten,
Prost!

 

EDIT2: @John Keyes Antwort funktioniert für das Beispiel oben, wo das Bild ist "kleiner" als die PDF-Dateigröße-aber wenn das Bild größer ist, z.B.:

$ convert -size 1228x1706 -background \#f44 -rotate 45 gradient:\#f00-\#fff red.jpg
$ identify red.jpg 
red.jpg JPEG 2075x2075 2075x2075+0+0 8-bit DirectClass 120KB 0.000u 0:00.000

... dann wird es scheitern. Es stellt sich jedoch heraus: "wenn Sie ändern -Maße 50x50, dann spielen Sie mit der Schwerkraft, Sie werden sehen, die änderungen" - außer, die Frage ist: die weit ändern, dass der Bild - oder der fertigen PDF?

Gut, es stellt sich heraus - es ist der Umfang der endgültigen PDF - ... Zu finden, die Größe wie convert sieht es, überprüfen Sie die Seite: Magick::Geometrie - beachten Sie jedoch, dass die "Postscript-Seitengröße Spezifikationen" wie "A4+43+43>" leider verursachen convert Absturz in diesem Zusammenhang... Aber zumindest die jeweiligen zahlen für die Größe (595x842) kopiert werden kann, von der Seite; und schließlich das funktioniert:

convert -page A4 -gravity center -resize 595x842 -extent 595x842 red.jpg out.pdf

... und tatsächlich, die -extent Teil ist nicht wirklich notwendig - die -resize Teil ist wichtig, um das große Bild zeigen..

Jedoch ist hier das problem, dass das Bild enthalten zu sein scheint neu berechnet wird - aber ich möchte nur zeigen, dass es skaliert, so passt er die Seite, aber sonst wie das original-JPG-stream eingefügt werden in die Datei.. Also ich denke, die Frage ist immer noch teilweise offen 🙂

EDIT: Verwandte:

InformationsquelleAutor sdaau | 2011-09-28

Schreibe einen Kommentar