Es un script, – creado por Jjgomera y Guadafan – del foro de Guadalinex - que puede manejar una selección de fotos y crear un documento.pdf en el que en cada página hay 2 fotos y sus correspondientes líneas para pie de foto, en el que poder poner a mano, una vez imprimido, un comentario de la foto.
Para ejecutarlo hace falta tener instalado los paquetes: python-reportlab, y zenity
Aquí se explica como crear un script. Una vez creados los scripts se guardan en la carpeta /home/usuario/.gnome2/nautilus-scripts ,con el nombre de Album_2fotos.py y se tiene acceso a ellos en Nautilus >botón secundario >menú Scripts.
Para usarlo se seleccionan en Nautilus las fotos con las que se quiere crear el documento.pdf y luego >botón secundario >menú Scripts->Album_2foto.py
——————————————-
El texto del script Album_2foto.py es:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
from reportlab.pdfgen import canvas
from reportlab.platypus import Image
from reportlab.lib.pagesizes import A4
from os import system
from glob import glob
from pyzenity import *
#Si se quiere usar el comando sin argumentos para que trate los archivos que haya a tutiplen
#extensiones=["*.gif", "*.png", "*.jpg"]
#imagenes=[]
#for extension in extensiones:
# imagenes+=glob(extension)
#imagenes.sort()
#ruta de la imagen, absoluta o relativa si se encuentra en el mismo directorio que el fichero py
#imagenes=["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg"]
#imagenes=[sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6], sys.argv[7]]
#total_archivos=(len(sys.argv))
#imagenes=range(len(sys.argv))
#for elemento in range(len(sys.argv)):
# imagenes[elemento]=sys.argv[elemento]
#primer_elemento=imagenes[0]
#imagenes.remove(primer_elemento)
imagenes=[]
for indice in range(1,len(sys.argv)):
imagenes.append(sys.argv[indice])
print imagenes
#total_archivos=(len(sys.argv))
#n=0
#for elemento in sys.argv:
# imagenes[n]=(elemento)”
# n=n+1
#texto del pie de foto
pie_de_foto=”"
c = canvas.Canvas(“album.pdf”, pagesize=A4)
c.setTitle(“Album”)
update = Progress()
paginas =len(imagenes)/2+len(imagenes)%2
for indice in range(paginas):
#4 líneas para el marco
c.line (50,50,550,50)
c.line (50,50,50,770)
c.line (50,770,550,770)
c.line (550,50,550,770)
#Título
c.line(100,800,500,800)
c.drawString(290,25,”- “+str(indice+1)+” -”)
print “Generando página %i…” % (indice+1)
for img in range(2):
try:
c.drawImage(imagenes[indice*2+img], 125, 530-img*360, width=340, height=230,preserveAspectRatio=True)
#Relleno del pie de foto
c.setFillColorRGB(0.85,0.85,0.85)
c.setStrokeColorRGB(1,1,1)
c.rect(90,420-img*360,420,100, fill=1)
c.setStrokeColorRGB(0.1,0.1,0.1)
c.setFillColorRGB(0, 0, 0)
#Pie de foto
for linea in range(4):
c.line(100,500-img*360-linea*20,500,500-img*360-linea*20)
except:
pass
partes=100/len(imagenes)
update(indice*partes, “Generando página %i…” % (indice+1))
c.showPage()
c.save()
#Si queremos abrirlo con algún visor de pdf
#system(“evince album.pdf”)
———————————————-
Un ejemplo del albúm de fotos creado en mi blog:http://***********
———————————————-

Por favor lee las normas
Por favor lee las normas antes de publicar.
Es lícito incluir en tu firma un enlace a tu blog, página personal, etc.
Pero no está permitido incitar a visitar tu página.
Si quieres hacer un Como (How To) adelante, pero no escribas la mitad y obligues a los lectores a visitar tu blog para leer el resto.
Gracias.
Equipo de Ubuntu-es
CAPASOFT
Alternativas Software Libre