Як перетворити .pdf файл у папку зображень?


16

У мене є кілька .pdf-файлів, які я хотів би перетворити на бажаний формат читання .cbr чи .cbz, або, якщо це не можливо безпосередньо, мені потрібно витягнути всі сторінки з .pdf у вигляді зображень, а потім стиснути їх у мій формат вибору. Мені вдалося зберегти сторінки одна за одною за допомогою засобу перегляду документів. Очевидно, я хотів би зробити це трохи швидше. Я спробував pdfsam, pdf shuffler та pdfmod - все не пощастило. Я використовую Ubuntu 11.10.

Відповіді:


14

Добре, я провів ще кілька досліджень, і хоча метод tohuwawohu справді працює, мені було легше використовувати програму під назвою pdftoppm, щоб досягти того, що я хотів зробити. Оскільки я в значній мірі лайперсон, коли справа доходить до використання програм командного рядка, я зроблю все можливе, щоб пояснити, як я змусив це працювати для мене.

  1. Перейдіть до папки, що містить .pdf, який ви хочете відредагувати, та відкрийте там термінал. Я зробив це, використовуючи зразок команди:

    cd ~/Documents/PDF
    
  2. Скажімо, файл, який я хочу відредагувати, називається Sample.pdf Що я хочу зробити, це використовувати pdftoppm для створення файлів зображень кожної сторінки .pdf. Можна обрати декілька форматів (див. Посилання на чоловічі сторінки вище), але я вважаю за краще використовувати .png. Основна команда виглядає так:

    pdftoppm -FORMAT FILENAME.pdf PREFIX
    

    або у наведеному вище прикладі:

    pdftoppm -png Sample.pdf Sample
    

    Ця команда створює файл зображень кожної сторінки в тій самій папці, що і вихідний .pdf-файл з такими іменами, як Sample-01.png, Sample-02.png тощо. Я успішно спробував це з розширеннями .png та .jpeg. .jpg, мабуть, не підтримується.

  3. Тоді я просто використовую диспетчер архівів , вибираючи всі новостворені файли зображень, клацнувши правою кнопкою миші та вибираючи з контекстного меню «Стиснути». Потім я вибираю потрібний формат архіву (у цьому випадку .cbz або Comic Book Zip) та створюю новий архів.

  4. Тепер у мене є блискучий новий .cbz файл під назвою Sample.cbz, який я потім можу переглянути за допомогою свого читача Comix !

Сподіваюся, те, що я розмістив вище, має достатньо сенсу, щоб хтось ще міг навчитися цьому. Якщо мені це потрібно змінити будь-яким способом, будь ласка, повідомте мене про це.


Дуже хороша! Здається, що pdftoppmнасправді простіше у використанні, ніж ImageMagick convert.
tohuwawohu

так, це дуже корисно і просто. Я лише хочу знати. може додати альфа-префікс. Як і префікс-а, префікс-б, префікс-с, таким чином
Pankaj Badukale

pdftoppmнадзвичайно повільно і використовує всю оперативну пам’ять на моєму комп’ютері. pdfimages -jпрацювали набагато краще.
Ерік Думініл

4

Я не дуже знайомий з * .cbr / * .cbz, але, здається, вам доведеться поєднувати два кроки:

  1. Перетворення PDF у зображення
  2. Стисніть їх у архіві ZIP / RAR.

Крок 1 Що стосується, ви можете використовувати ImageMagick «S convertкоманди. Ви можете подавати convertPDF, що містить декілька сторінок, і convertповертатиме кожну сторінку у вигляді одного графічного файлу. Я перевірив його з текстом, відсканованим на 400 dpi, і наступна команда призвела до отримання хороших одиночних JPGE:

$ convert -verbose -colorspace RGB -interlace none -density 400 -quality 100 yourPdfFile.pdf 00%d.jpeg

(кредити щодо -qualityопції: цей запис на форумі )

В результаті, ви отримуєте 000.jpeg, 001.jpegі так далі. Просто зафіксуйте їх у .cbzфайл, і ви закінчите.

Ви навіть можете поєднати обидва етапи, об'єднавши їх:

$ convert -verbose -colorspace RGB -interlace none -density 400 -quality 100 yourPdfFile.pdf 00%d.jpg && zip -vm comic.cbz *.jpg

(переконайтеся, що в поточній робочій директорії немає інших JPEG-файлів, оскільки, використовуючи наведений вище код, zip перемістить всі JPEG у файл cbz)


4

Я написав простий скрипт bash саме для цієї мети, вам потрібен буде встановлений poppler, так що:

sudo apt-get install poppler-utils #ubuntu
brew install poppler # mac

Ось сценарій bash (збережіть його як convert_to_cbz.sh):

filename="${1%.*}"
echo "Converting $filename to cbz"
mkdir "./$filename"
pdftoppm -jpeg "$1" "./$filename/000"
zip -r9 "${filename}.cbz" "./$filename" 
rm -rf "./$filename"

Щоб використовувати скрипт bash:

chmod +x convert_to_cbz.sh
./convert_to_cbz.sh "Nintendo Official Magazine 066 (OldGameMags).pdf"

Сподіваємось, це комусь стане в нагоді!


Чудово, дякую. Мені довелося трохи змінити сценарій. pdftoppmвикористав усю мою оперативну пам’ять і розбив мій комп'ютер. Заміна 4-го рядка на pdfimages -j "$1" "./$filename/000" зробила трюк. Він працює чудово, це швидко, здається, що втрати якості не виникають, а кбц трохи менший, ніж оригінальний pdf. pdfimagesтакож включено до poppler-utils.
Ерік Думініл

3

Спробуйте скористатися калібром для прямого перетворення .pdf в .cbr або .cbz.


Дякую за пропозицію, але для мене використання Caliber як рішення не буде працювати. Я встановив програму, і я шкодую, що стверджує, що болить великий палець на робочому столі! Крім того, я виявив, що за допомогою команди pdftoppm, наведеної нижче, БУДЕ швидше, ніж установка та налаштування Calibre перед перетворенням.
Шон

@Shawn Так, я б сказав, що Калібер некрасивий і повільний, але він робить свою роботу. Я радий, що ти знайшов краще рішення :)
bntser

1

Здається, найпростішим способом є використання Acrobat Pro.

  1. Відкрийте PDF в Acrobat Pro.
  2. Щойно файл відкриється, перейдіть до FileExportImageJPEG, він експортує кожну сторінку як єдиний JPG.
  3. Помістіть усі JPG у папку
  4. Застебніть папку.
  5. Змініть розширення вручну в кінці заархівованого файлу з .zip на .cbz

Якщо ви віддаєте перевагу файлу CBR , перезапустіть папку, а не блискавки, а потім змініть розширення з .rar на .cbr .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.