¿Cómo convertir un archivo .pdf en una carpeta de imágenes?

16

Tengo algunos archivos .pdf que me gustaría convertir a mi formato de lectura preferido de .cbr o .cbz o, si esto no es directamente posible, necesito extraer todas las páginas del .pdf como imágenes y luego comprimirlas en Mi formato de elección. Solo he podido guardar páginas de una en una con Document Viewer. Obviamente, me gustaría hacerlo un poco más rápido. He probado pdfsam, pdf shuffler y pdfmod, todo sin suerte. Estoy usando Ubuntu 11.10.

Shawn
fuente

Respuestas:

14

Bien, investigué un poco más y, aunque el método de tohuwawohu funciona, me resultó más fácil usar un programa llamado pdftoppm para lograr lo que quería hacer. Dado que soy bastante laico cuando se trata de usar aplicaciones de línea de comandos, haré todo lo posible para explicar cómo conseguí que esto funcione para mí.

  1. Navegue a la carpeta que contiene el .pdf que desea editar y abra una terminal allí. Hice esto usando el comando de muestra:

    cd ~/Documents/PDF
    
  2. Digamos que el archivo que quiero editar se llama Sample.pdf Lo que quiero hacer es usar pdftoppm para crear archivos de imagen de cada página del .pdf. Se pueden elegir varios formatos (ver el enlace de las páginas man arriba) pero prefiero usar .png. El comando básico se ve así:

    pdftoppm -FORMAT FILENAME.pdf PREFIX
    

    o en el ejemplo anterior:

    pdftoppm -png Sample.pdf Sample
    

    Este comando crea un archivo de imagen de cada página en la misma carpeta que el archivo .pdf original con nombres como Sample-01.png, Sample-02.png, etc. Lo he intentado con las extensiones .png y .jpeg con éxito. .jpg aparentemente no es compatible.

  3. Luego, solo uso el Administrador de archivos seleccionando todos los archivos de imagen recién creados, haciendo clic derecho y seleccionando "Comprimir" en el menú contextual. Luego elijo el formato de archivo que prefiero (en este caso .cbz o Comic Book Zip) y creo el nuevo archivo.

  4. ¡Ahora tengo un nuevo y brillante archivo .cbz llamado Sample.cbz que puedo ver con mi lector Comix !

Con suerte, lo que he publicado anteriormente tiene suficiente sentido para que alguien más pueda aprender de él. Si necesito cambiarlo de alguna manera, avíseme.

Shawn
fuente
¡Muy agradable! Parece que pdftoppmde hecho es más fácil de usar que ImageMagick convert.
tohuwawohu
Sí, es muy útil y fácil. Sólo quiero saber. Puede agregar el prefijo alfa. Como prefijo-a, prefijo-b, prefijo-c, de esta manera
Pankaj Badukale
pdftoppmes extremadamente lento y usa toda la RAM de mi computadora. pdfimages -jFuncionó mucho mejor.
Eric Duminil
4

No estoy muy familiarizado con * .cbr / * .cbz, pero parece que tendrá que combinar dos pasos:

  1. Convertir PDF a imágenes
  2. Comprímalos en un archivo ZIP / RAR.

Con respecto al paso 1, puede usar el comando de ImageMagickconvert . Puede alimentar convertcon un PDf que comprende varias páginas, y convertdevolverá cada página como un archivo de gráficos único. Lo probé con un texto escaneado a 400 ppp, y el siguiente comando resultó en buenos JPGE individuales:

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

(créditos con respecto a la -qualityopción: esta entrada del foro )

Como resultado, obtienes 000.jpeg, 001.jpegy así sucesivamente. Simplemente colóquelos en un .cbzarchivo y listo.

Incluso podría combinar ambos pasos "concatenando":

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

(asegúrese de que no haya ningún otro JPEG en su directorio de trabajo actual, ya que al usar el código anterior, zip moverá todos los JPEG al archivo cbz)

Tohuwawohu
fuente
4

He escrito un script bash simple para este propósito, necesitará instalar poppler, así que:

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

Aquí está el script bash (guárdelo como 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"

Para usar el script bash:

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

¡Espero que esto sea útil para alguien!

Alasdair Morrison
fuente
Maravilloso, gracias. Aunque tuve que cambiar un poco el guión. pdftoppmusé toda mi RAM y estrellé mi computadora. Reemplazar la cuarta línea con pdfimages -j "$1" "./$filename/000" hizo el truco. Funciona bien, es rápido, no parece haber ninguna pérdida de calidad y el cbz es ligeramente más pequeño que el pdf original. pdfimagesTambién se incluye en poppler-utils.
Eric Duminil
3

Intente usar calibre para convertir directamente el .pdf a .cbr o .cbz.

bntser
fuente
Gracias por la sugerencia, pero para mí usar Calibre como solución no funcionará. Instalé el programa y lamento decir que sobresale como un pulgar dolorido en mi escritorio. Además, descubrí que usar el siguiente comando pdftoppm es MUCHO más rápido que instalar y configurar Calibre antes de convertir.
Shawn
@ Shawn Sí, diría que Calibre es feo y lento, pero hace el trabajo. Sin embargo, me alegro de que hayas encontrado una solución mejor :)
bntser
1

Parece que la forma más fácil es usar Acrobat Pro.

  1. Abra el PDf en Acrobat Pro.
  2. Una vez que se abre el archivo, vaya a FileExportImageJPEG, exportará cada página como un solo JPG.
  3. Coloque todos los JPG en una carpeta
  4. Comprime la carpeta.
  5. Cambie manualmente la extensión al final del archivo comprimido de .zip a .cbz

Si prefiere un archivo CBR , rar la carpeta en lugar de comprimirlo, luego cambie la extensión de .rar a .cbr .

Eric Vincent
fuente