Converte cada imagem (JPG, JPEG, PNG) em PDFs com o tamanho de papel definido (A4...)
Publicado por Rodrigo Albuquerque Serafim (última atualização em 23/08/2017)
[ Hits: 10.160 ]
Homepage: https://www.vivaolinux.com.br/~raserafim
Download 6689.script-image2pdf.sh
Converte cada imagem (JPG, JPEG, PNG) de um diretório em PDFs com o tamanho de papel definido (A4...).
Ou seja, o script gera um arquivo PDF para cada arquivo de imagem nos formatos JPG, JPEG, PNG que estejam contidos no diretório em que o script está sendo executado (mantendo intacto o arquivo original). Todos os arquivos PDFs gerados possuem o mesmo tamanho de papel definido (por padrão, o tamanho A4).
Características de operação:
- converte (em lote) os arquivos de imagem (JPG, JPEG, PNG) do diretório local, cada imagem num PDF;
- mantém o tamanho original da imagem (até o limite do tamanho de papel definido);
- não rotaciona a imagem;
- alinha a imagem no Centro a partir do Topo;
- todos os PDFs gerados ficam com o mesmo tamanho de papel (A4, ou A5 ou Letter ...);
- preserva o arquivo original;
Particularmente, o utilizo para converter certificados acadêmicos que recebo em formato de imagem, ou que escaneei neste formato, para depois organizá-los em diretórios de acordo com a estrutura utilizada pelo CNPQ no Currículo Lattes.
Em conjunto com este script utilizo um outro: script-pdfallunite.sh ( https://www.vivaolinux.com.br/~raserafim/scripts/ ).
Este outro Script varre PDF's em diretórios e sub-diretórios (que organizei de acordo com a estrutura do Currículo Lattes), portanto recursivamente, de maneira ordenada para gerar um único PDF com todos os certificados acadêmicos.
Publico o presente Script na expectativa de que contribua de alguma maneira para aqueles que, porventura, tenham a mesma necessidade que eu; ou, então, para aqueles que o Script tenha serventia, com algumas adaptações ou como material que contém alguma ideia útil para outros Scripts.
Como Executar:
- baixar o arquivo do Script; OU copiar o texto do Script diretamente da WEB para um arquivo texto criado no computador;
- dar permissão de execução para o arquivo com o Script:
- por exemplo: # chmod +x script-image2pdf.sh;
- copiá-lo (ou movê-lo) para o diretório local que contém os arquivos a serem convertidos;
- executar o Script com o comando: $ ./script-image2pdf.sh
- obs: o prefixo "./" (ponto-barra) deve vir antes do nome do arquivo para especificar que o arquivo a ser executado está no diretório local (corrente), e não em um dos caminhos do "PATH".
Para dar permissão de alteração do conteúdo do Script, utilizar o comando, por exemplo: # chmod a+w script-image2pdf.sh
Obs: o Script requer o pacote: ImageMagick
#!/bin/sh # script-image2pdf.sh - Converte cada imagem (JPG, JPEG, PNG) de um diretório # em PDF's com o tamanho de papel definido (A4...). # Copyright 2016, 2017 Rodrigo Albuquerque Serafim. # Autor: Rodrigo Albuquerque Serafim (raserafim) # Contato: https://www.vivaolinux.com.br/~raserafim # Versão: 1.0 # Data: 01-08-2017 # Dependências: ImageMagick # Licença: GPL v3 <https://www.gnu.org/licenses/gpl-3.0.html> # Este programa é um software livre; você pode redistribuí-lo e/ou # modificá-lo sob os termos da Licença Pública Geral GNU como publicada # pela Fundação do Software Livre (FSF); na versão 3 da Licença, # ou (a seu critério) qualquer versão posterior. # Este programa é distribuído na esperança de que possa ser útil, # mas SEM NENHUMA GARANTIA; sem uma garantia implícita de ADEQUAÇÃO # a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a # Licença Pública Geral GNU para mais detalhes. # Você deve ter recebido uma cópia da Licença Pública Geral GNU junto # com este programa. Se não, veja <http://www.gnu.org/licenses/>. # Esta é uma tradução não oficial da GNU General Public License em Português. ###################################################################### # Características de Operação: # - converte (em lote) os arquivos de imagem (JPG, JPEG, PNG) do diretório local; # - mantém o tamanho original da imagem (até o limite do tamanho de papel definido); # - não rotaciona a imagem; # - alinha a imagem no Centro a partir do Topo; # - todos os PDF's gerados ficam com o mesmo tamanho de papel (A4 ou A5 ou Letter ...); # - preserva o arquivo original; # A4 = 1654 pixels x 2339 pixels (-extent 1654x2339) # A5 = 1165 pixels x 1654 pixels (-extent 1165x1654) # Letter = 1700 pixels x 2200 pixels (-extent 1700x2200) # Por padrão o Script gera PDF's no tamanho A4. # Para outros tamanhos, basta alterar os valores do parâmetro "-extent" no código abaixo. ###################################################################### qtdf=$(ls *.jpg *.jpeg *.png 2> /dev/null | wc -l) if [ $qtdf == 0 ] then echo Não há arquivos JPG, JPEG ou PNG a serem convertidos neste diretório. exit fi echo "Iniciando o processo de conversão de" $qtdf "arquivo(s)..." for f in *.jpg *.jpeg *.png do echo " " echo Convertendo $f ... convert -compress jpeg -quality 100 ./"$f" -background white -compose Copy -gravity north -extent 1654x2339 ./"${f%.*}.pdf" echo Convertido! done echo " " echo Processo de conversão concluído!
Encerrar sessão no terminal com tempo definido
Troca de imagem da tela de bloqueio de usuário no Linux Mint MATE
Montar pasta remota NFS em Zenity
InstallTXZ - converte e instala pacotes do Slackware no Debian
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
O livro "Linux - Guia do Administrador do Sistema (Rubem E. Ferre... (1)
Como redefinir o diretório Home? (2)
Será possível instalar Linux Mint LMDE em Sony Vaio? (16)
Posso instalar usar o grub sem ter linux instalado, para iniciar o win... (2)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (6)