linux convert jpg to pdf

понеделник, юни 15th, 2009

Преди няколко дни ми се наложи да редактирам pdf файл направен от някаква скенер програмка на Xerox, която обединява всички сканирани страници в един общ файл. Проблемът е, че както и да му подадеш листа, във файла в последствие някои от страниците са обърнати на 180°. Rotate от самия pdf reader не върши работа, защото завърта всичко глобално. Така че се налага да разбием файла така да се каже на съставните му части и да обърнем страниците, които имат нужда от това. Варианти да се направи това има няколко. Може да стане и графично с The GIMP,  и в command line с convert, който е част от ImageMagick.

Графично това става по следния начин:

  • отваряме желания pdf файл с GIMP
  • в менюто import from pdf избираме Select All (или Select Range ако искаме да обърнем само първите три страници да речем)
  • Open Pages As Images

и на края естествено Import така GIMP отваря всяка (или всяка посочена) страница като отделна картинка, която можем да редактираме и запишем в желания формат.

gimp-pdf-import

Втория и според мен много по-лесен начин е този с convert, като просто трябва да изпълним следното:

convert input.pdf image_%03d.tiff

или

convert input.pdf image_%03d.jpg

ако предпочитаме jpg изходни файлове, като „%03d“ означава, че в името ще имаме image_ последвано от 3 цифри, предхождани от нули от рода 001, 002 или в крайна сметка image_00x.jpg. И ако картинката, която има нужда от завъртане е 003, то стигаме до:

convert -rotate 180 image_003.jpg output.jpg

На края остава да съединим картинките и да получим първоначалния файл, но вече без страници, които са с с главата надолу :), като това става по следния начин:

convert *jpg modified.pdf

като така получаваме pdf файл, в който всяка входяща картинка е на отделна страница.

Това естествено съвсем не е всичко, което можем да направим с convert. Повече може да се види тук или в man-а.

Забележка:
Последната стъпка поне на този етап не работи и няма да работи във Fedora 11. Повече тук.

del.icio.us Digg Google Technorati Svejo.net