2016-04-07 7 views
0

Ich versuche, eine PDF-Datei aus einer JPG-Datei mit Ghostscript auszugeben. Der folgende Befehl funktioniert:Erstellen von PDF aus einer einzigen JPG-Datei mit Ghostscript - Bildplatzierung Problem in PDF

gs -sDEVICE=pdfwrite -sPAPERSIZE=a4 -o /pdf_from_image.pdf /path/to/viewjpeg.ps -c \(/source_image.jpg\) viewJPEG 

Basierend auf bestehenden Threads und Ghostscript-Dokumentation I -sPAPERSIZE=a4 bin mit der Ausgabe im A4-Format zu erzeugen. Die PDF-Datei wird in Ordnung erstellt, aber wenn die Bildgröße nicht mit der von A4 übereinstimmt, legt GS das Bild am unteren Rand der Seite mit der besten "Breite" an. Ich denke, es versucht tatsächlich, es unten links zu setzen. Um es hinzuzufügen, wird das Bild manchmal automatisch gedreht.

Meine Frage ist:
1) Gibt es eine Option, um das Bild in der oberen linken Ecke der Seite zu setzen.
2) Stoppen Sie GS, indem Sie das Bild automatisch drehen.

Jede Hilfe, um mich in die richtige Richtung zu setzen würde sehr geschätzt werden. Vielen Dank.

Antwort

0

PDF und PostScript benutzen ein Koordinatensystem mit dem Ursprung (0,0) in der unteren linken Ecke, also macht Ghostscript eigentlich das 'richtige' Ding: das Bild an den Ursprung setzen. Um das Bild oben zu platzieren, müssen Sie die Bildhöhe von der Seitenhöhe abziehen und das Bild um diesen Betrag nach oben verschieben.

Warum einige Bilder gedreht werden, kann ich nicht mit Sicherheit sagen. Einige JPGs enthalten Metadaten, die die beabsichtigte Ausrichtung des Bilds angeben - jedoch erhält nicht jede Software den richtigen Wert. Ich weiß nicht, ob Ghostscript diese Metadaten respektiert, aber Sie könnten überprüfen, ob Ihre "schlechten" Bilder das richtige Orientierungs-Tag haben (Sie können Exif oder ähnliches verwenden, um sie zu inspizieren).

+0

Vielen Dank für Ihre Antwort, wissen Sie, wie ich die Übersetzung mit Ghostscript tun kann. Das ist, was ich im Grunde tun möchte, übersetzen Sie es so, dass es in der oberen linken Ecke der Seite sitzt. –

+0

Sie müssen PostScript lernen und das PostScript-Programm viewjpeg.ps ändern. – KenS