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.067 ]
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!
Importar vários Emolticons de uma vez para amsn
Script para converter um diretório de arquivos em mp3 para ogg.
Monitorando tentativas de conexões
Desklets DoItYourself como monitor do sistema
Instalar TDE em sistemas Debian
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
Ubuntu 24.04.01 do nada as pastas estão abrindo o Analisador de arquiv... (1)
ocorreu um erro ao carregar o pacote (2)