Gerando PDF de imagens
Publicado por Mauricio (última atualização em 13/09/2012)
[ Hits: 15.042 ]
Homepage: http://www.mbmaciel.com
Gere PDF de imagens num diretório usando o Software Opensource Report Lab.
Visite o site para mais informações: http://www.reportlab.com/software/opensource/
Obs.: O script pega também as imagens de subdiretórios.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# >>> gera_pdf.py - 04/09/2012
# Por Mauricio Maciel <mbmaciel@linuxdepot.com.br>
# Gerador de pdf das imagens no diretorio. Utiliza o report lab.
# Reportlab - http://www.reportlab.com/software/opensource/
# Instalação - sudo easy_install reportlab
import os
import random
import string
from reportlab.pdfgen import canvas
#variaveis
dir = os.getcwd()
def file_generator(size=6, chars=string.ascii_lowercase + string.digits):
'''
Função gera o nome aleatorio
'''
word = ''.join(random.choice(chars) for x in range(size))
return 'file'+word+'.pdf'
def pdfDirectory(imageDirectory, outputPDFName=file_generator()):
'''
Função gera o PDF
'''
dirim = str(imageDirectory)
output = str(outputPDFName)
c = canvas.Canvas(output, pagesize=(425,283))
try:
for root, dirs, files in os.walk(dirim):
for name in files:
lname = name.lower()
if lname.endswith(".jpg") or lname.endswith(".gif") or lname.endswith(".png"):
filepath = os.path.join(root, name)
c.drawImage(filepath, 0, 1, width=425, height=283)
c.showPage()
c.save()
print "PDF das imagens criado!"
except:
print "Falha ao gerar PDF"
# modo de usar
pdfDirectory(dir)
Juntando tabelas em aquivo texto
Manipulação de arquivos CSV - OO
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
Utilizando a Ferramenta xcheckrestart no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
como usar o caja como cliente FTP no linux mint? (0)
Bluetooth desconecta logo após conectar, ubuntu 25.10 (0)
Compilando o gcc-g++ 15.2[RESOLVIDO] (18)
o que é esta mensagem? relatorios do sistema (6)
(CLIPPER) Rodando o mesmo código tanto no Windows quanto no Linux (0)









