Gerando PDF de imagens
Publicado por Mauricio (última atualização em 13/09/2012)
[ Hits: 12.373 ]
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)
Leitor de arquivo via linha de comandoEs
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como converter imagens PNG/JPEG para SVG em linha de comando
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
Erro na atualização dos pacotes (5)
Cliente para Celular Spark (3)
[AJUDA] Problemas ao atualizar BIOS da Gigabyte B550M K rev. 1.1 — “RO... (3)