Converte de PDF para JPG
Publicado por Artur Gaspar (última atualização em 13/04/2010)
[ Hits: 7.233 ]
Converte PDF para JPG e retorna uma lista com as imagens.
Depende do pacote ghostscript-library ou algum outro que contenha o programa "gs" no $PATH.
from os import listdir, path from re import match from signal import SIGKILL from subprocess import Popen, PIPE from tempfile import mkdtemp from time import time def pdf2jpg(pdf, timeout=False): dir = mkdtemp() gs = Popen(['gs', '-dSAFER', '-dBATCH', '-dNOPAUSE', '-sDEVICE=jpeg', '-r150', '-dTextAlphaB', 'its=4', '-dGraphicsAlphaBits=4', '-dMaxStripSize=8192', '-sOutputFile=%s/page%%d.jpg' % dir, pdf], stdin=PIPE, stdout=PIPE, stderr=PIPE) if timeout: start = time() while time() - start <= timeout: if gs.poll() == None: # Not terminated pass elif gs.poll() == 0: # Terminated ok break else: # Not ok stdout, stderr = gs.communicate() raise EnvironmentError(None, 'GhostScript terminated unexpect' 'edly', 'Stdout: \n%s\nStderr: \n%s\n' % (stdout, stderr)) return False gs.send_signal(SIGKILL) else: if gs.wait() != 0: stdout, stderr = gs.communicate() raise EnvironmentError(None, 'GhostScript terminated unexpectedly', 'Stdout: \n%s\nStderr: \n%s\n' % (stdout, stderr)) return False images = [] for image in listdir(dir): if match('page[0-9][0-9]*.jpg', image): images.append(path.join(dir, image)) return images
Manipulando arquivos com Pickle
Serialização em Python usando pickle
Descobrir HOME do usuario e criar arquivo de configuração
Nenhum coment�rio foi encontrado.
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Salvar estado da VM no virt-manager [RESOLVIDO] (5)
Primeiras impressões do Debian 13 (11)