Converte de PDF para JPG
Publicado por Artur Gaspar (última atualização em 13/04/2010)
[ Hits: 7.206 ]
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
Detectando e excluindo imagens em branco obtidas de scanner
Nenhum coment�rio foi encontrado.
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
VOL com problemas de acesso por varios dias e posisvelmente voltaram u... (3)