convertir grupo de imagenes a un pdf linux lubuntu
Informe: Conversión de Imágenes a PDF en Linux (Ubuntu)
Objetivo:
Convertir 8 imágenes en un único archivo PDF, donde cada imagen se muestre en una página distinta, respetando sus dimensiones originales y usando páginas en formato horizontal.
Entorno:
- Sistema operativo: Ubuntu Linux
- Usuario: maxi
- Terminal utilizada: Bash (línea de comandos)
- Editor de texto: gedit (instalado en el proceso)
- Lenguaje: Python 3.6 (versión preinstalada en el sistema)
Pasos realizados:
1. Verificación de pip
El usuario intentó instalar paquetes con:
pip install pillow fpdf
El sistema respondió que pip no estaba instalado. Se propuso instalarlo con:
sudo apt install python3-pip
2. Instalación de pip3
El siguiente comando instaló correctamente pip3:
sudo apt install python3-pip
Se verificó que se había instalado correctamente con:
pip3 --version
Resultado:
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)
3. Instalación de bibliotecas necesarias
Se instalaron las bibliotecas Pillow y fpdf con el siguiente comando:
pip3 install --user pillow fpdf
La instalación fue exitosa:
Successfully built pillow fpdf
4. Instalación del editor de texto gedit
Al intentar usar gedit, el sistema indicó que no estaba instalado. Se procedió con:
sudo apt install gedit
Una vez instalado, se abrió con:
gedit imagenes_a_pdf.py
5. Creación del script en Python
Se creó el archivo imagenes_a_pdf.py con el siguiente contenido:
from PIL import Image
from fpdf import FPDF
imagenes = [
"imagen1.jpg",
"imagen2.jpg",
"imagen3.jpg",
"imagen4.jpg",
"imagen5.jpg",
"imagen6.jpg",
"imagen7.jpg",
"imagen8.jpg",
]
pdf = FPDF(unit="mm")
for img_path in imagenes:
img = Image.open(img_path)
w, h = img.size
w_mm = w * 0.264583
h_mm = h * 0.264583
pdf.add_page()
pdf.image(img_path, x=0, y=0, w=w_mm, h=h_mm)
pdf.output("salida.pdf", "F")
6. Ejecución del script
Desde la carpeta donde están las imágenes, se ejecutó:
python3 imagenes_a_pdf.py
Esto generó satisfactoriamente el archivo salida.pdf.
7. Modificación para formato horizontal (paisaje)
Por pedido del usuario, se modificó el script para que cada hoja del PDF esté en formato horizontal (landscape). El cambio clave fue:
pdf = FPDF(orientation='L', unit='mm', format='A4')
Se guardó y se volvió a ejecutar el script con:
python3 imagenes_a_pdf.py
El resultado fue exitoso: un archivo PDF en formato horizontal, con cada imagen respetando su tamaño y colocada en su propia hoja.
Conclusión
El proceso fue exitoso tras instalar herramientas básicas como pip3, gedit y las bibliotecas de Python requeridas. A través de un pequeño script en Python, se logró automatizar la conversión de imágenes en un archivo PDF personalizado y funcional.
Comentarios
Publicar un comentario