Para convertir varias imágenes a PDF, este script lo hará para todas las imágenes dentro de una carpeta:
#!/bin/bash
#
for f in *.png; do
convert ./"$f" ./"${f%.png}.pdf"
done
Pero cada imagen se convierte en un archivo independiente.
¿Se pueden convertir todas las imágenes en un solo pdf?
Respuesta1
Puedes utilizar la -adjoin
opción de convert
:
convert -adjoin *.png out.pdf
Este comando dará como resultado un pdf
archivo con todas las png
imágenes.
Respuesta2
Fuenteaquí, aGenere archivos PDF a partir de cualquier conjunto de documentos, no sólo imágenes.
De la fuente anterior:
Principio fundamental
Cuando desee generar un archivo PDF de varias páginas a partir de varios documentos, debe seguir algunos pasos:
Sort of all input documents in alphabetical order Convert them to some temporary PDF files Assemble all temporary PDF documents to a final multi-pages PDF document.
La conversión de documentos de entrada a formato PDF temporal debe realizarse según su tipo MIME:
Image files (jpg, png, tiff, …) Plain text files (txt) Libre Office & Open Office documents (odt, ods, …) Microsoft Office files (doc, docx, xls, xlsx, ppt, pptx, …)
Dependiendo del tipo de documento de entrada, la conversión a PDF debe realizarse utilizando herramientas específicas:
convert (from ImageMagick) for image files unoconv for Libre Office, Microsoft Office and plain text files
Una vez que todos los documentos de entrada se convierten a algunos archivos PDF temporales, el ensamblaje del documento final se realiza utilizando GhostScript. Esta poderosa herramienta permite:
merge multiple PDF documents optimize final file size
Para Nautilus y Gnome, vea más detalles en el enlace anterior, que incluye más scripts para automatizar los procesos necesarios. He utilizado un enfoque más limitado, ya que la solución está optimizada para Gnome ad Nautilus y uso principalmente KDE y Dolphin.
Esta solución proporciona los resultados solicitados en la pregunta, pero también debe aplicarse aDocumentos de texto y pdf (además de imágenes).y fusionarlos todos en el pdf final.
Los archivos están integrados en el pdf de salida.en orden alfabético.
El comando final del menú contextual también se puede aplicara la carpeta que contiene todos los archivospara fusionarse.
La solución también incluye algunosGUIcaracterísticas.
Entonces:
sudo apt-get install imagemagick unoconv ghostscript zenity libfile-mimeinfo-perl
Usando gedit
u otro editor de texto:
gedit ~/.config/pdf-generate.conf
Y pega esto:
[general]
compression=95
density=200
Entonces, si desea modificar algún parámetro predeterminado, simplemente edite este archivo antes de ejecutar la herramienta.
El script principal a cargo de la generación de PDF k=job debe colocarse en /usr/local/bin/pdf-generate
. Consulte el enlace fuente para conocer el contenido del guión principal. (Tambiénaquí.)
Puede instalar el script principal y su archivo de configuración desde la línea de comando:
# mkdir --parents $HOME/.config
# wget --header='Accept-Encoding:none' -O $HOME/.config/pdf-generate.conf https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/pdf/pdf-generate.conf
# sudo wget --header='Accept-Encoding:none' -O /usr/local/bin/pdf-generate https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/pdf/pdf-generate
# sudo chmod +x /usr/local/bin/pdf-generate
Para integrar completamente esta herramienta de generación de PDF en su entorno de escritorio:
gedit /usr/share/applications/pdf-generate.desktop.
Consulte el enlace para la integración de Gnome/Nautilus y la descarga e instalación automatizadas. Una versión ligeramente simplificada y ajustada a mis necesidades de KDE:
[Desktop Entry]
Type=Application
Exec=pdf-generate
Hidden=false
NoDisplay=false
Icon=pdf
Keywords=pdf;generate;image;office;document;merge
StartupNotify=true
Name[en_US]=Generate PDF document
Name[en]=Generate PDF document
Name[C]=Generate PDF document
Name[fr_FR]=Génération d'un PDF
Comment=Tool to merge a set of documents to a PDF file.
Comment[en_US]=Tool to merge a set of documents to a PDF file.
Comment[fr_FR]=Outil de concaténation de documents en un fichier PDF.
MimeType=image/bmp;image/gif;image/jpeg;image/jpg;image/png;image/tiff;application/pdf;application/x-pdf;application/x-bzpdf;application/x-gzpdf;application/msword;application/vnd.ms-word;application/vnd.oasis.opendocument.text;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.openxmlformats-officedocument.presentationml.slideshow;text/plain;
Categories=GNOME;GTK;Graphics;Conversion;Utility;
Para obtener una integración completa con el escritorio, esta herramienta de generación de PDF debe serdisponible desde una acción personalizada en el menú contextual del administrador de archivos.
Para Nautilus, debe declarar la nueva acción personalizada en un archivo .desktop ubicado debajo ~/.local/share/file-manager/actions
(consulte el enlace para ver el contenido). Para Dolphin/KDE está en formato ~/.kde/share/kde4/services/ServiceMenus/
. Por lo tanto, hice:
gedit ~/.kde/share/kde4/services/ServiceMenus/pdf-generate.desktop
con el contenido:
[Desktop Entry]
Actions=pdf-generate
Encoding=UTF8
Icon=pdf
MimeType=MimeTypes=image/bmp;image/gif;image/jpeg;image/jpg;image/png;image/tiff;application/pdf;application/x-pdf;application/x-bzpdf;application/x-gzpdf;application/msword;application/vnd.ms-word;application/vnd.oasis.opendocument.text;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.openxmlformats-officedocument.presentationml.slideshow;text/plain;inode/directory;application/pdf
ServiceTypes=KonqPopupMenu/Plugin
Type=Service
[Desktop Action pdf-generate]
Exec=pdf-generate %F
Icon=pdf
Name=Create pdf file
Después de volver a iniciar sesión, aparece una opción de menú contextual al seleccionar archivos, como se indica en el enlace de origen. Para mi configuración de KDE/Dolphin, esto funciona para archivos seleccionados si tienen la misma extensión. De lo contrario, la mejor manera es simplemente colocar todos los archivos necesarios en una carpeta y luego ejecutar el comando desde el menú contextual del botón derecho de esa carpeta.
Prueba en una carpeta que contiene un archivo png, jpeg, pdf y odt:
El archivo de salida está en la carpeta de origen, con el nombre first_in_alphabetical_order-merged.pdf
.
Respuesta3
Actualizado:
Lo que he usado más recientemente en Dolphin es este menú de servicio:
[Desktop Entry]
Type=Service
Actions=image2pdf
Icon=application-pdf
Encoding=UTF-8
TryExec=img2pdf
ServiceTypes=KonqPopupMenu/Plugin
MimeType=image/*
[Desktop Action image2pdf]
Exec=konsole -e img2pdf %F -o out.pdf
Icon=application-pdf
Name=Convert selected image(s) into single pdf
como dijoaquí. (Para solucionar problemas con la numeración adecuada de los archivos, consulteeste.)
sudo apt install imagemagick
Cree un menú contextual para el administrador de archivos, por ejemplo un "Menú de servicio" para Dolphin; ~/.local/share/kservices5/ServiceMenus/IMG_2_PDF.desktop
: 4pPtqnJTDYShMf3 [Entrada de escritorio] Tipo=Servicio ServiceTypes=KonqPopupMenu/Plugin MimeType=image/*; Acciones=pdf;
[Desktop Action pdf]
Name=Create PDF from images
Icon=application-pdf
Exec=bash -c 'convert %F out.pdf'
Para cualquier administrador de archivos que admita acciones del menú contextual, las líneas importantes son:
MimeType=image/*;
Exec=bash -c 'convert %F out.pdf'
Asegúrese de que no le afectePolítica de seguridad de ImageMagick 'PDF' que bloquea la conversión.
Usando Gthumb (no todos los espectadores pueden imprimir)múltipleimágenes para archivar):
- seleccione las imágenes, haga clic derecho sobre ellas y ábralas todas en gThumb (se mostrarán como en un explorador de archivos, no en el visor de imágenes);
¡Incluso se pueden reorganizar las imágenes antes de crear el pdf!
Simplemente arrastre y suelte:
- para imprimirlos, selecciónelos nuevamente, haga clic derecho en ellos, seleccione "Imprimir";
- seleccione la ubicación donde guardar el archivo y en la lista de impresoras seleccione "Imprimir en archivo".
Otros visores de imágenes que pueden imprimir varias imágenes en PDF:
(Por cierto, soy el OP y autor de otra respuesta también (ahora firmado user32012
): eliminé mi cuenta en algún momento y ahora he vuelto).