Gerando PDF de imagens
Publicado por Mauricio (última atualização em 13/09/2012)
[ Hits: 11.849 ]
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)
Manipulando arquivos com Pickle
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Configurando static ipv6 em placa de rede eth0[DUVIDA] (1)
Sistema da Coréia do Norte - Red Star OS (59)