Converter imagem com ferramenta de conversão de linha de comando imagemagick

1

Eu tenho uma imagem Image.png . Como uso o comando convert do ImageMagick para transformar esse arquivo em um arquivo Image.jpg com os seguintes requisitos:

  1. O tamanho do arquivo é de 200 ~ 500 kb.
  2. Resolução não inferior a 450 dpi
  3. Tamanho da imagem 35 x 45 mm

Edit: Estes são os requisitos exatos para fazer alguns documentos através do governo eletrônico. Não é um problema que a qualidade se deteriore, porque a imagem é necessária apenas para o processo de criação do documento (não para o próprio documento).

Não estou totalmente claro em entender o que esses requisitos significam em relação a um arquivo. Eu descobri como obter .jpg de .png :

$ convert Image.png Image.jpg

Além disso, descobri como definir um DPI específico:

$ convert -units PixelsPerInch Image.png -density 450 Image.jpg

No entanto, não tenho certeza sobre milímetros e como isso é determinado em um arquivo de imagem.

    
por Loom 17.01.2014 / 22:37

2 respostas

3

O comando

convert Image.png  -resize 620x797 -quality 1 Image.jpg

atende às suas reivindicações. No entanto, o PNG é uma compactação sem perdas e o JPG é com perdas, portanto, você pode compactar o quanto quiser, mas o resultado pode não atender às suas necessidades.

Como descobrir:
450 pontos por polegada significa 450 pixels por 25,4 mm
para obter a largura: 450 * 35 / 25.4 = 620
para obter a altura: 450 * 45 / 25,4 = 797

    
por 18.01.2014 / 00:01
1

Basta converter DPI em métrico: 450 DPI é igual a 17,71 pontos por mm.

Isto dá 17,71 * 35 = 621 pixels (você tem que arredondar para cima) ou mais para a largura e 17,71 * 45 = 798 pixels ou mais para a altura.

Com isso, use converter redimensionar normal:

convert Image.png -resize 621x798 Image.jpg

para obter o tamanho certo.

    
por 18.01.2014 / 08:26